【发布时间】:2016-03-09 22:22:56
【问题描述】:
由于某种原因,当我调用这个 deletebook.php 时,查询总是正确的,但如果名称中有一个单词,它只会实际删除这本书。我的任何建议都被卡住了一段时间,可以使用一些帮助。
$book = $_GET["book"];
$email = $_SESSION["email"];
$servername = "";
$username = "";
$password = "";
$dbname = "";
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// sql to delete a record
$sql = "DELETE FROM books WHERE email = '". $email ."' and name = '". $book ."'";
if ($conn->query($sql) === TRUE) {
echo "Record deleted successfully";
} else {
echo "Error deleting record: " . $conn->error;
}
$conn->close();
?>
这是managebooks.php中的相关代码
while($row = mysql_fetch_array($result)) {
echo "<div id='book'>
<ol>
<li>";
echo $row['name'];
echo "</li><li>";
echo $row['price'];
echo "</li>
</ol>
<form action='deleteBook.php' method='get'>
<input type='hidden' name='book' value=". $row['name'] ." />
<button type='submit'>Delete</button></form></div>";
}
【问题讨论】:
-
引用价值?
value='". $row['name'] ."' /> -
你真的应该有身份证并将它们用于这种事情
-
另外我建议你用包含
'和"的书名来测试你的代码,例如我最喜欢的书名是'"><script>alert();</script> -
感谢 abra 尸体!我现在觉得很傻
-
呸,底部喂食器今天很忙