0

これを理解するのに少し問題があります。私がやったことは、すべてのコースをhtmlテーブルに表示するwhileループを使用してテーブルを作成したことです:

<?php
include_once "Includes/config.php";

function manCourse(){
    $SQL = "SELECT cname FROM course";
    $result = mysql_query($SQL);
    if (!mysql_num_rows($result))
    {
        echo "There are no courses.";
    }
    else 
    {
        while ($row = mysql_fetch_assoc($result))
        {                   
            echo "<tr><td> Course name: <b> " .$row['cname']."</b></td> <td><a href = ''>Edit</a></td> <td><a href = ''>Delete</a></td> </tr>";
        }


    }

}
?>

私の問題は、誰かがそれを行うために必要な削除または編集リンクをクリックしたときです。どの行を編集または削除する必要があるかを知るために、キーとして何を使用できますか?

どんな助けでも大歓迎です!ありがとう。

4

3 に答える 3

0

delete.php という名前のページを作成する必要があります

delete.php にはこのコードが必要です。

そして、このような削除リンクを介して変数を渡す必要があります

while ($row = mysql_fetch_assoc($result)){
echo " コース名: " .$row['cname']."編集 削除 "; }

于 2013-11-02T12:12:42.547 に答える
0

各行に一意の主キーを常に含めるための非常に優れたデータベース設計。これにより、ここでの問題が解決され、他のテーブルへの参加などの他の利点が得られます。このキーはテーブルに含める必要がありますが、ユーザーには表示されません。

create table course 
(
   course_id int not null primary key auto_increment,
   . . .
)

ユーザーが [削除] をクリックしたときにそのキーを UI から返し、次の SQL を使用してデータベースからキーを削除します。

delete from course where course_id = $course_id
于 2013-11-02T12:03:13.457 に答える
0
<?php
 include_once "Includes/config.php";

  function manCourse(){
   $SQL = "SELECT id,cname FROM course";
    $result = mysql_query($SQL);
   if (!mysql_num_rows($result))
    {
     echo "There are no courses.";
   }
  else 
  {
     while ($row = mysql_fetch_assoc($result))
    {                   
         echo "<tr><td> Course name: <b> " .$row['cname']."</b></td> <td><a href = ''>Edit</a></td> <td><a href = 'delete.php?id=".$row['id']."'>Delete</a></td> </tr>";
     }


  }

}
 ?>

delete.php は、レコードを削除するためのコードを追加する新しいファイルです。$row['id']レコードのプライマリであり、常に一意です。

于 2013-11-02T12:07:26.153 に答える