PHPでアンケートフォームを作成しているのですが、アンケートの投稿番号の表記がうまくいきません。
1行ごとに「{番号}<>{名前}<>{コメント}<>{投稿された時間}」と言う形でテキストファイルに保存することをしたいのですが。
なお「いきなりはじめるPHP」という書籍を参照しています。
<!DOCTYPE html> <html lang = "ja"> <head> <meta charset="UTF-8"> <title>初めてのプログラミング</title> </head> <body> <h1>好きな本</h1> <form action = "mission_2-2.php" method = "post"> 名前:<br/> <input type = "name" name = "name"><br/> 好きな本:<br/> <input type = "text" name ="comment"><br/> <p><input type = "submit" value ="送信/"></p> </form> </body> </html> <?php $filename = 'mission_2-2.txt'; //echo $filename; $fp = fopen($filename,'a'); $date = date("Y-m-d-H-i-s"); $boards = file('mission_2-2.txt',FILE_IGNORE_NEW_LINES); foreach ($boards as $board) { $line = explode('<>',$board); //$line[0]は番号 //$line[1]は名前 //$line[2]は投稿内容 //$line[3]は日付 if ($maxNumber < $line[0]) { $maxNumber = $line[0]; } } $nextNumber = $maxNumber + 1; //投稿されているデータの表示や、 //投稿されたデータの処理等 //$name = $_POST['name']; //$postBody = $_POST['postBody']; fwrite($fp,$nextNumber.'<>'.$_POST['name'].'<>'.$_POST['comment'].'<>'.$date.PHP_EOL); $ret_array = file($filename); for($i = 1; $i < count($ret_array); ++$i){ echo($ret_array[$i]."<br/>"); } fclose($fp); ?>
回答2件
あなたの回答
tips
プレビュー