QA@IT

phpで作成した簡易掲示板で指定した番号のコメントを削除する方法

4476 PV

php初心者です

今,phpで簡易掲示板を作成しています

番号を指定すると、指定された番号のコメントが削除される仕組みを作っています。
コードを書いたのですが、反応せず、コメントが消えません。
番号指定して、削除ボタンを押すと該当番号のコメントが消えるコードを教えていただきたいです

コード↓

<?php

$dataFile ='bbs2.txt';

if(isset($_POST['toukou']))
{

$message = ($_POST['message']);

$user = ($_POST['user']);

$postedAt = date('Y-m-d H:i:s');



$newData = (sizeof(file($dataFile)) + 1)."<>".$message."<>".$user."<>".$postedAt. "\n";

$fp = fopen($dataFile,'a');
fwrite($fp, $newData);
fclose($fp);

}

if (isset($_POST['delete'])) {

$delete = $_POST['delete'];

$delCon = file("bbs2.txt");
for ($j = 0; $j < count($delCon) ; $j++){
$delData = explode("<>", $delCon[$j]);
if ($delData[0] == "{".$delete."}") {
array_splice($delCon, $j, 1);
file_put_contents($dataFile, implode("\n", $delCon));

}
}

}

?>

<!DOCTYPE html>



簡易掲示板


    簡易掲示板

    message:<input type="text" name="message">
     user:<input type="text" name="user">
     <input type="submit" name="toukou" value="投稿"></br></br>

 </form>

 <form action="" method="POST">
 削除対象番号<input type="text" name="delete">
     <input type="submit" name="delete" value="削除">
 </form>

<?php

 $file=file($dataFile); // ファイルの内容を配列に格納


 foreach( $file as $value ){

 $line = explode("<>",$value);

 echo $value."<br />\n"; // 改行しながら値を表示

}

?>

  • $deleteにはきちんと数値が入っていますか? count($delCon)はきちんと行数を数えられていますか? bbs2.txtはループ前後で書き換えられますか? という問題の切り分けを行ってください。 -
ウォッチ

この質問への回答やコメントをメールでお知らせします。