前提・実現したいこと
ここに質問の内容を詳しく書いてください。
phpでweb掲示板を作っています。
削除機能を実装中に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
php掲示板で削除機能を実行したいです。 Notice: Undefined variable: dataFile in /public_html/mission_3-3.php on line 39 Warning: Invalid argument supplied for foreach() in /public_html/mission_3-3.php on line 39
該当のソースコード
php
1<html> 2<body> 3 <form action = "mission_3-3.php" method="post"> 4 名前: 5 <input type="text" name="name"><br/> 6 7 コメント: 8 <input type="text" name="comment"><input type="submit" value="送信" ><br/> 9 10 削除対象番号: 11 <input type="text" name="deleteNo" placeholder="削除対象番号"> 12 <input type="submit" name="delete" value="削除"> 13 </form> 14 15 <?php 16 $filename = "mission_3-3.txt"; 17 if(!empty($_POST["name"])) { 18 19 $fp = fopen($filename,'a'); 20 $dataFile = explode(" ",$filename) ; 21 fwrite($fp,count(file($dataFile[0]))."<>".$_POST["name"]."<>".$_POST["comment"]."<>".date( "Y年m月d日 H:i:s" )); 22 fwrite($fp,"\n"); 23 fclose($fp); 24 } 25 26 27$fp = fopen("mission_3-3.txt", "r"); 28while ($line = fgets($fp)) { 29 $line2 = explode("<>",$line); 30 print_r($line2[0]." ".$line2[1]." ".$line2[2]." ".$line2[3]); 31 print_r("<br>"); 32} 33fclose($fp); 34 35 36$delete = $_POST['deleteNo']; 37if(!empty($delete)){ 38 $fp=fopen($filename,'w'); 39 foreach( $dataFile as $key => $value){ 40 $line = explode("<>",$value); 41 if($line[0] != $delete){ 42 fwrite($fp,$line[0]." ".$line[1]." ".$line[2]." ".$line[3]); 43} 44 45} 46fclose($fp); 47} 48?> 49</table> 50</body> 51</html>
試したこと
配列などがよく分からず躓いています。
補足情報(FW/ツールのバージョンなど)
出典はどちらのものでしょうか?
回答3件
あなたの回答
tips
プレビュー