Php 从MySQL中删除行
不知是否有人能帮助我 我正在使用下面的代码部分创建一个表,正确列出与当前用户相关的记录Php 从MySQL中删除行,php,mysql,delete-row,Php,Mysql,Delete Row,不知是否有人能帮助我 我正在使用下面的代码部分创建一个表,正确列出与当前用户相关的记录 /* display row for each user */ echo "<tr>\n"; $theID = $row['locationid']; echo " <td style='text-align: Center'>{$row['locationname']}</td>\n"; echo " <td style='text-align: Left
/* display row for each user */
echo "<tr>\n";
$theID = $row['locationid'];
echo " <td style='text-align: Center'>{$row['locationname']}</td>\n";
echo " <td style='text-align: Left'>{$row['returnedaddress']}</td>\n";
echo " <td style='text-align: Center'>{$row['totalfinds']}</td>\n";
echo " <form action= locationsaction.php method= 'post'><input type='hidden' name='lid' value=$theID/> <td><input type= 'submit' name= 'type' value= 'Details'/></td>
<td><input type= 'submit' name= 'type' value= 'Images'/></td>
<td><input type= 'submit' name= 'type' value= 'Add Finds'/></td>
<td><input type= 'submit' name= 'type' value= 'View Finds'/></td>
<td><input type= 'submit' name = 'type' value= 'Delete'/></td></form>\n";
我遇到的问题是删除记录。这是我正在使用的查询:
'deletelocation.php'
<?php
session_start();
$_SESSION['lid'] = $_POST['lid'];
if (isset($_POST['type'])) {
$urls = array(
'Details' => 'viewlocation.php',
'Add Finds' => 'addfinds.php',
'Images' => 'addimages.php',
'View Finds' => 'locationfinds.php',
'Delete' => 'deletelocation.php'
);
$url = $urls[$_POST['type']];
header("Location: " . $url);
}
?>
<?php
$lid = $_SESSION['lid'];
$query = "DELETE FROM detectinglocations WHERE locationid='$lid'";
$result = mysql_query($query);
?>
您缺少会话_start()
位于deletelocation.php
的开头
你必须在每一页上调用它,它想要使用会话
因此,在您的情况下,$\u会话['lid']
不可解析,这将使您的SQL查询无效
:
session_start()创建会话或恢复当前会话
您缺少会话_start()
位于deletelocation.php
的开头
你必须在每一页上调用它,它想要使用会话
因此,在您的情况下,$\u会话['lid']
不可解析,这将使您的SQL查询无效
:
session_start()创建会话或恢复当前会话
您是否尝试过回显正在生成的SQL,并直接在数据库中运行它?请编写一个echo mysql_error()
请发送到您的deletelocation.php并发布您的输出您是否尝试删除此id'或1=1
这是整个删除脚本吗?实际上,您并没有通过mysql\u connect()连接到数据库。通过echo mysql\u error()
进行简单的错误检查就会发现这一点。关于易受sql注入攻击的帖子变得越来越重复,人们似乎不再关心这一点。相关:您是否尝试过回显正在生成的SQL,并直接在数据库中运行它?请编写一个echo mysql_error()
请发送到您的deletelocation.php并发布您的输出您是否尝试删除此id'或1=1
这是整个删除脚本吗?实际上,您并没有通过mysql\u connect()连接到数据库。通过echo mysql\u error()
进行简单的错误检查就会发现这一点。关于易受sql注入攻击的帖子变得越来越重复,人们似乎不再关心这一点。相关报道:您好@Sirko,感谢您抽出时间发送解决方案。我对PHP编程非常陌生,非常感谢您的帮助。善良的regardsHi@Sirko,感谢您抽出时间发送解决方案。我对PHP编程非常陌生,非常感谢您的帮助。问候