1

我正在做一个电影库作为学校作业,并且有来自数据库表的电影列表,我希望在每一行旁边都有一个编辑和删除选项。

我想为它使用编辑/删除链接。喜欢:

"<a href='moviestorage.php?edit=" . $id . "'>Edit</a>"

但我不确定如何获取每部电影的 id,以便将其从数据库中删除。我应该写什么查询?我需要有一个单独的 delete.php 文件吗?我是个新手,所以请多多包涵:) 下面你可以看到我已经完成的代码。

 <?php 

        require 'connect.inc.php';

//This feels incomplete... I´m trying here to fish the ID...
        $id = "SELECT id from movies";
        $query = "DELETE FROM movies WHERE id='$id'";


        $query = "SELECT * FROM movies, categories WHERE movies.genre_id = categories.genre_id";
        $result = mysql_query($query);

        if (!$result) die ("Database access failed:" .mysql_error()) ;

        $rows = mysql_num_rows($result);

        echo '<table><tr><th>Title</th><th>Release year</th><th>Genre</th><th>Director</th><th>Update</th><th>Delete</th></tr>';

        for ($j = 0 ; $j < $rows ; ++$j) {
        echo '<tr><td>' . mysql_result($result,$j,'title') . '</td>' ;
        echo '<td>' . mysql_result($result,$j,'release_year') . '</td>' ;
        echo '<td>' . mysql_result($result,$j,'genre') . '</td>' ;
        echo '<td>' . mysql_result($result,$j,'director') . '</td>' ;
        echo '<td>'."<a href='edit_movie.php?edit=" . $id . "'>Edit</a>".'</td>' ;
        echo '<td>'."<a href='delete.php?delete=" . $id . "'>Delete</a>".'</td></tr>' ;

        }
        echo '</table>'; 

        include 'add_movie.php';
    ?>
4

3 回答 3

1

我建议您为每一行使用一个带有删除和编辑按钮以及带有 ID 的隐藏字段的表单。然后,您可以将该表单发布到正确的脚本并确定要在那里采取的行动。

如果您必须使用链接来删除项目,至少让链接指向另一个确认页面,其中包含用户必须提交的表单并发布到您的删除脚本。

于 2013-03-08T00:12:22.137 回答
0

如果您必须在新页面上编辑和删除,那么您可以通过这种方式放置超链接

  echo "<a href=\"edit.php?id=".mysql_result($result,$j,'id')."\"><strong>EDIT</strong>";

  echo "<a href=\"delete.php?id=".mysql_result($result,$j,'id')."\"><strong>delete</strong>";

对于删除的确认,您可以在删除链接上使用它

  echo "<a href=\"delete.php?id=".mysql_result($result,$j,'id')."\" onclick=\"return confirm('You want to delete your own account???');\"><strong>delete</strong>";

比使用获取下一页上的id

    $id = $_GET['id'];

希望对你有用

于 2013-03-08T05:40:40.373 回答
0

如果您需要一个简单有效的解决方案,请使用数据表。:) 请在谷歌搜索。花了一些时间研究如何实现它,它将为将来节省大量时间。

于 2014-11-22T15:02:30.140 回答