从mysql数据库php中删除数据
首先,我不是开发人员,所以请容忍我:) 我正在尝试从我们正在设置的小型库存系统中删除一行,但它仍然不允许我执行任何操作,这是我当前的代码: 指定页面:从mysql数据库php中删除数据,php,mysql,Php,Mysql,首先,我不是开发人员,所以请容忍我:) 我正在尝试从我们正在设置的小型库存系统中删除一行,但它仍然不允许我执行任何操作,这是我当前的代码: 指定页面: <?php $password = 'notTheRealPassword'; $conn = mysql_connect('localhost', 'root', $password); if(!$conn) { die('Error connecting database'
<?php
$password = 'notTheRealPassword';
$conn = mysql_connect('localhost', 'root', $password);
if(!$conn)
{
die('Error connecting database');
}
mysql_select_db('inventory_system', $conn);
$query= "SELECT * from assigned";
$result=mysql_query($query);
echo "<table border='0' cellpadding='100' class='table-striped'>";
echo "<th>Asset ID</th><th>Asset</th><th>Type</th><th>Manufacturer</th><th>Model</th><th>PC
Name</th><th>Serial Number</th><th>Purchased</th><th>Warranty
End</th><th>OS</th><th>OS
Bit</th><th>CPU</th><th>Memory</th><th>HDD</th><$
while($row = mysql_fetch_array($result))
{
echo '<td>' . $row['asset_id'] . '</td>';
echo '<td>' . $row['asset'] . '</td>';
echo '<td>' . $row['type'] . '</td>';
echo '<td>' . $row['manufacturer'] . '</td>';
echo '<td>' . $row['model'] . '</td>';
echo '<td>' . $row['pc_name'] . '</td>';
echo '<td>' . $row['serial_no'] . '</td>';
echo '<td>' . $row['purchased'] . '</td>';
echo '<td>' . $row['warranty_end'] . '</td>';
echo '<td>' . $row['os'] . '</td>';
echo '<td>' . $row['os_bit'] . '</td>';
echo '<td>' . $row['cpu'] . '</td>';
echo '<td>' . $row['memory'] . '</td>';
echo '<td>' . $row['hdd'] . '</td>';
echo '<td>' . $row['plant'] . '</td>';
echo '<td>' . $row['location'] . '</td>';
echo '<td>' . $row['username'] . '</td>';
echo "<td><a href=\"delete.php?id=".$row['asset_id']."\">Delete</a></td>";
echo "</tr>";
}
echo "</table>";
mysql_close();
?>
这里有一些地方不对劲:
- 您在链接中输入的GET变量是
id
,而不是asset\u id
- 您不应该使用GET来修改数据库中的内容;如果您的浏览器或插件决定预取链接,您的数据库将被删除
- 您不能混合使用mysql API,可以使用mysqli或mysql(尽管不是后者…)
- 不推荐使用
mysql.*
函数,您应该将PDO或mysqli与准备好的语句结合使用
- 当您回显大量html时,只需关闭php部分,然后在需要时再次打开它就更容易了;现在,在回显文本中有了php标记。php/strings/html没有正确分开
这里有几点错误:
- 您在链接中输入的GET变量是
id
,而不是asset\u id
- 您不应该使用GET来修改数据库中的内容;如果您的浏览器或插件决定预取链接,您的数据库将被删除
- 您不能混合使用mysql API,可以使用mysqli或mysql(尽管不是后者…)
- 不推荐使用
mysql.*
函数,您应该将PDO或mysqli与准备好的语句结合使用
- 当您回显大量html时,只需关闭php部分,然后在需要时再次打开它就更容易了;现在,在回显文本中有了php标记。php/strings/html没有正确分开
mysql\u connect
是您的问题。你不能混用司机。您还应该使用参数化查询。@chris85我差点就把它关闭了,但这里面的错误比我想说的还要多。杰罗恩在下面贴了一些东西。@Fred ii-是的,在还有一些问题之后注意到了。撤回投票。错误报告也可以帮助OP。OP请查看并监控您的错误日志。告诉我们;抛出了什么和mysql\u error()
?这里有很多语法错误。编辑:GMTA;-)mysql\u connect
是您的问题。你不能混用司机。您还应该使用参数化查询。@chris85我差点就把它关闭了,但这里面的错误比我想说的还要多。杰罗恩在下面贴了一些东西。@Fred ii-是的,在还有一些问题之后注意到了。撤回投票。错误报告也可以帮助OP。OP请查看并监控您的错误日志。告诉我们;抛出了什么和mysql\u error()
?这里有很多语法错误。编辑:GMTA;-)我还会再看看他们的代码;Stack的荧光灯显示在@Fred ii中及其周围有错误-啊,还有更多?!?!看起来是这样;有什么不正常的事情发生了,你看到语法突出显示了吗?@Fred ii-是的,有一半的时间我只是假设OP是在玩,
字符来格式化代码:-)增加了另一点。@Fred ii-或者没有,结果看起来很有趣;-)我还会再看看他们的代码;Stack的荧光灯显示在@Fred ii中及其周围有错误-啊,还有更多?!?!看起来是这样;有什么不正常的事情发生了,你看到语法突出显示了吗?@Fred ii-是的,有一半的时间我只是假设OP是在玩,
字符来格式化代码:-)增加了另一点。@Fred ii-或者没有,结果看起来很有趣;-)
<?php
$password = 'notTheRealPassword';
$conn = mysql_connect('localhost', 'root', $password);
if(!$conn)
{
die('Error connecting database');
}
mysql_select_db('inventory_system', $conn);
$id = (int)$_GET['asset_id'];
mysqli_query($conn,"DELETE FROM assigned WHERE asset_id='".$id."'");
mysqli_close($conn);
header("Location: assigned1.php");
?>