PHP在URL

时间:2017-08-20 06:46:17

标签: php mysql

我正在尝试传递两个ID来删除记录。将要传递的第一个ID是要删除的患者的历史记录的ID。第二个ID是历史记录表的患者外键的主ID。一旦我删除了患者的病史记录,它就会重定向回该病人的个人资料。

以下是我的表格操作中的代码:

<td><a class="text-danger" onClick="return confirm('Are you sure you want to clear this record?')" href="clear_records.php?id=<?php print $rows4['id'];?>?p_id=<?php print $rows5['p_id']; ?>"><i class="fa fa-times text-danger"></i>Clear</a></td>

以下是 clear_records.php

中的代码
<?php
include "../config.php";

$id = $_REQUEST['id'];
$p_id = $_REQUEST['p_id'];
// sql to delete a record
$sql = "DELETE FROM nutritional_records WHERE id=$id";

if ($conn->query($sql) === TRUE) {
    header("location: preschooler_profile.php?p_id=$p_id");
} else {
    echo "Error Clearing record: " . $conn->error;
}

$conn->close(); 
?> 

这是错误:

  

错误清除记录:SQL语法中有错误;检查   手册,对应右边的MySQL服务器版本   要在&#39;?p_id = 00023&#39;附近使用的语法在第1行

以下是我的网址:

http://localhost/NutriCare/admin/clear_records.php?id=8?p_id=00023

寻求帮助。 提前谢谢。

2 个答案:

答案 0 :(得分:6)

您的网址应如下所示 -

http://localhost/NutriCare/admin/ClearRecords.php?id=8&p_id=00023

在URL中的第一个参数后面应该有&符号(&amp;)而不是问号。

答案 1 :(得分:1)

在您的代码中尝试此操作:

<td><a class="text-danger" onClick="return confirm('Are you sure you want to clear this record?')" href="clear_records.php?id=<?php echo $rows4['id'];?>&p_id=<?php echo $rows5['p_id']; ?>"><i class="fa fa-times text-danger"></i>Clear</a></td>

include "../config.php";
$id = $_GET['id'];
$p_id = $_GET['p_id'];
if(is_int($id)){
    $id = intval($id);
    $sql = "DELETE FROM nutritional_records WHERE id=$id";
    if ($conn->query($sql) === TRUE) {
        header("location: preschooler_profile.php?p_id=$p_id");
    } else {
        echo "Error Clearing record: " . $conn->error;
    }
    $conn->close();
} else {
    echo "Invalid ID";
}