ブラウザで実行して削除ボタン、編集ボタンを押しても何も起こらない。テキストファイル、ブラウザの表示から削除されない。
ご回答お願いします。
PHP
1<html lang="ja"> 2<head> 3 <meta charset="UTF-8"> 4 <title>keijiban.php</title> 5</head> 6 <body> 7 <form action="" method="POST"> 8 <input type="text" name="name" value="" placeholder="名前"><br> 9 <input type="text" name="comment" value="" placeholder="コメント" > 10 <input type="submit" name="submit_add" value="送信"><br> 11 <input type="text" name="deleteNo" value="" placeholder="削除対象番号(半角)"> 12 <input type="submit" name="submit_del" value="削除"><br> 13 <input type="text" name="edit" value="" placeholder="編集対象番号(半角)"> 14 <input type="submit" name="submit_edit" value="編集"> 15 </form> 16 <?php 17 $name=$_POST["name"]; 18 $comment=$_POST["comment"]; 19 $delete=$_POST["delete"]; 20 $edit=$_POST["edit"]; 21 $date=date("Y/m/d H:i:s"); 22 $filename="keijiban.txt"; 23 //投稿番号、名前、コメント、日付 24 if(empty($name)==false&&empty($comment)==false){//nameとcommentが空でないなら 25 $ret_array=file($filename); 26 $d=$ret_array===false ? 1 : count($ret_array)+1; 27 $a=$d."<>".$name."<>".$comment."<>".$date; 28 $fp=fopen($filename,"a+"); 29 fwrite($fp,$a.PHP_EOL); 30 fclose($fp); 31 } 32 //削除機能 33 if(empty($submit_del)==false){//削除番号が空でないなら 34 $ret_array=file($filename); 35 $fp=fopen($filename,"w"); 36 for($i=0;$i<count($ret_array);$i++){ 37 if($i==$submit_del-1){ 38 continue; 39 } 40 fwrite($fp,$ret_array[$i]); 41 } 42 fclose($fp); 43 } 44 //編集機能 45 if(empty($submit_edit)==false){//編集番号が空でないなら 46 $ret_array=file($filename); 47 for($i=0;$i<count($ret_array);$i++){ 48 $ex=explode("<>",$ret_array[$i]); 49 if($i==$submit_edit-1){ 50 $editnumber=$ex[0];//配列の1番目(投稿番号) 51 $editname=$ex[1];//配列の2番目(名前) 52 $editcomment=$ex[2];//配列の3番目(コメント) 53 } 54 } 55 } 56 $editcomplete=$editnumber."<>".$editname."<>".$editcomment; 57 58 if(empty($submit_del)==false&&empty($name)==false&&empty($comment)==false){ 59 //削除番号、名前、コメントが空でないなら 60 $editel=file($filename); 61 $fp=fopen($filename,"w"); 62 for($i=0;$i<count($editel);$i++){ 63 $plode=explode("<>",$editel); 64 if($i==$submit_edit-1){ 65 $d=$editel === false ? 1 : count($editel)+1; 66 $a=$d."<>".$name."<>".$comment."<>".$date; 67 fwrite($fp,$editcomplete); 68 } 69 } 70 fclose($fp); 71 } 72 73 74 $ret_array=file($filename); 75 if(empty($ret_array)==false){//ret_arrayが空でないなら 76 for($i=0; $i<count($ret_array);$i++){ 77 echo $ret_array[$i] . "<br>"; 78 } 79 } 80?> 81 </body> 82</html>
その前にNoticeレベルのエラーも表示設定にして確認してください。
なんか、結構、色々と雑な感じです。
あと、あなたが作りたいものはあなたしか知りませんし、当該課題を全ての人がするわけではありません。
前提や背景、操作の手順、環境、調べたこと試したこと
きちんと書いてください。
あなたの回答
tips
プレビュー