2

PHPとSQLについてサポートが必要です。さまざまなテーマ(職場、自宅、学校など)でメモを投稿できるWebサイトを作成しています。データベースから選択されていることに注意した後、その特定の投稿が不要になったときに削除できるボタンが必要です。削除することはできますが、間違ったメモを削除します。常に上または下のメモを削除します。コードの何が問題なのかわかりませんか?私を助けてください。

    <?php 
    $query = "SELECT * FROM notes WHERE subject='Work' order by id desc";
    $result = mysql_query($query);
    while ($row = mysql_fetch_array($result)) { 
            $id = $row['id'];
            $subject = $row['subject'];
            $date = $row['date'];
            $note = $row['note']; 

            print "<p><strong>$subject</strong> ($id), $date </p>"; 
            print "<p> $note </p>";

        ?>
        //delete button starts here here
        <form id="delete" method="post" action="">
        <input type="submit" name="delete" value="Delete!"/>    
        <?php
        if(isset($_POST['delete'])){
           $query = "DELETE FROM notes WHERE id=$id"; 
           $result = mysql_query($query);
        }
        ?>  
        </form>
        <?php
    }   
    ?>

そして、削除を押すと、これが表示されます。

警告:mysql_fetch_array():指定された引数は40行目の/home/mirho663/www-pub/webbpage/menu2.phpにある有効なMySQL結果リソースではありません

それはどういう意味ですか、どうすれば修正できますか?

4

1 に答える 1

3

以下のスクリプトを更新しました。動作する場合は試してください。

<?php 

    if(isset($_POST['delete'])){
       $id = $_POST['delete_rec_id'];  
       $query = "DELETE FROM notes WHERE id=$id"; 
       $result = mysql_query($query);
    }

    $query = "SELECT * FROM notes WHERE subject='Work' order by id desc";
    $result = mysql_query($query);
    while ($row = mysql_fetch_array($result)) { 
            $id = $row['id'];
            $subject = $row['subject'];
            $date = $row['date'];
            $note = $row['note']; 

            print "<p><strong>$subject</strong> ($id), $date </p>"; 
            print "<p> $note </p>";

        ?>
        //delete button starts here here
        <form id="delete" method="post" action="">
        <input type="hidden" name="delete_rec_id" value="<?php print $id; ?>"/> 
        <input type="submit" name="delete" value="Delete!"/>    

        </form>
        <?php
    }   
    ?>
于 2012-08-02T15:33:17.250 に答える