编辑特定行中的按钮

时间:2014-07-06 00:16:27

标签: php mysql sql-update

我有这个包含约会的表格!我称之为约会,它具有以上属性:appontid,date,description,name。私钥是appointid。我有代码用select来显示所有约会,但我想在每一行都有链接进行编辑和删除。如果有人选择在特定任命中进行编辑,我想保留rantevouid,以便向他发送表格以填写并更新具有特定身份证的委任。

    <?php
    session_start();
    include('dbConfig.php');
    $result = mysql_query ("SELECT * FROM appoint") ;
    print '<table border="1">';
    print '<tr>';
    print '<td>ID appoint</td>';
    print '<td>date</td>';
    print '<td>description</td>';
    print '<td>name</td>';
    print '<td>EDIT</td>';
    print '<td>DELETE</td>';
    print '</tr>';
    while ($row = mysql_fetch_array ($result))
    {
    print '<tr>';
    print '<td>'.$row['appointid'].'</td>';
    print '<td>'.$row['date'].'</td>';
    print '<td>'.$row['description'].'</td>';
    print '<td>'.$row['name'].'</td>';
    print '<td> <a href="edit.php">EDIT </a> </td>';
    print '<td> <a href="delete.php">DELETE</a> </td>';
    print '</tr>';
    }
    print '</table>'; 
    echo "</table>";

现在,如果某人例如按EDIT进行第一次约会,我想填写一份带有日期描述和名称的表格,我想更新mysql的指定表。为了做到这一点,我想保持特定的appointid,以便进行更新,其中id = $ id1;有什么想法吗?

有谁能告诉我这个msql_query是否正确?上面有一个表格,我告诉我,你从另一页上拿到了我的

    <?php
    include('dbconfic.php');
    if(isset($_POST['submit'])){
    $id=$_GET['id'];
    $com=$_POST['comment'];
    $realdate=$_POST['date1'];
    $result=mysql_query("UPDATE appoint set comments='$com',date='$realdate' WHERE       'id=$id'") or die("QUERY error: ".mysql_error());
    echo"Row updated.";
    mysql_close();
    }
    ?>

    <form action="" method="post">
    <table>

    <tr>
    <td>NEW COMMENT</td>
    <td><input name="comment" type="text"> </td>
    </tr>
    <tr>
    <td>REAL DATE</td>
    <td><input name="date1" type="text" > </td>
    </tr>
    <tr>
    <td><input type="submit" name="submit" value="submit"></td>
    </tr>
    </table>
    </form>

1 个答案:

答案 0 :(得分:0)

在这种情况下,您的链接需要具有要编辑/删除的记录的值:

print '<td> <a href="edit.php?id=' . $row['appointid'] . '">EDIT </a> </td>';
print '<td> <a href="delete.php?id=' . $row['appointid'] . '">DELETE</a> </td>';

然后在每个后续页面(edit.php和delete.php)上,您可以从查询字符串中获取正在编辑/删除的约会的ID:

$_GET['id']

使用该ID,您可以选择要编辑/删除的特定记录并进行相应处理。但请注意,用户可以修改此值,因此至少您需要:

  1. 确保用户有权编辑/删除编辑和删除页面上所请求的记录,而不仅仅是在此页面上显示记录时。
  2. 不要直接在数据库查询中使用该值,否则会暴露SQL注入漏洞。确保验证类型/值并将其用作查询参数,而不是将其按原样注入SQL查询。