我有一个问题可以解决这个问题。我所做的是我使用while循环创建了一个表,它将我的所有课程显示在一个html表中:
<?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>";
}
}
}
?>
我的问题是当有人点击它需要执行的删除或编辑链接时。我可以使用什么作为密钥,以便知道需要编辑或删除哪一行?
任何帮助将不胜感激!感谢。
答案 0 :(得分:0)
非常好的数据库设计总是包含每行的唯一主键。这将解决您的问题,并将允许其他好处,如加入其他表。然后,此密钥应包含在您的表中,但对用户不可见。
create table course
(
course_id int not null primary key auto_increment,
. . .
)
在点击删除时将该密钥从UI传回,并使用此SQL将其从数据库中删除:
delete from course where course_id = $course_id
答案 1 :(得分: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']
是记录的主要内容,它始终是唯一的。
答案 2 :(得分:0)
您必须创建名为delete.php的页面
delete.php必须有此代码。
你必须通过删除链接传递变量,这将是这样的
while($ row = mysql_fetch_assoc($ result)){
echo“课程名称:”。$ row ['cname']。“编辑删除”;
}