У меня возникла проблема с удалением строки в базе данных с помощью SQL-запроса в PHP, я пытался выяснить, не является ли мой код неправильным, и я много раз пытался повторно-разложить мой код, но у меня все еще есть проблема с моим Код SQL
вот мой код
<?php
if(isset($_POST['del'])){
$cn = @mysql_connect("localhost", "root", "");
if(!$cn){
echo "Cannot connect to MySQL server<br>";
exit;
}
mysql_select_db("Logistic");
$pid = (int)$_POST['pid'];
if (mysql_query("DELETE FROM product WHERE product.PID = '$pid'")){
mysql_close($cn);
echo '<script type="text/javascript">
alert("Delete product ID:' . $pid . ' successfully");
history.go(-1);
</script>';
} else {
mysql_close($cn);
echo '<script type="text/javascript">
alert("Delete product ID:' . $pid . ' error");
history.go(-1);
</script>';
}
}
?>
Когда я запускаю этот PHP, заявление
mysql_query("DELETE FROM product WHERE product.PID = '$pid'")
оказывается ЛОЖНЫМ все время, даже если в строке есть product.PID = ‘$ pid’
Я приветствую любые советы и заранее благодарю.
Получаете ли вы pid с URL? Вы можете отладить свой код, чтобы найти проблему.
Если вы получаете pid, возможно, проблема в запросе.
if (mysql_query("DELETE FROM product WHERE product.PID = '$pid'") or die(mysql_error())){....
Он выведет ошибку MySQL и выйдет из программы.
Вы можете использовать print_r ($ _ POST), чтобы напечатать все переменные записи, поступающие на страницу.
Ваш код просто говорит об успехе.
Вы можете поставить проверку удаления, используя mysql_affered_rows () count> = 1.
рабочий код.
<html>
<form method="POST">
<input type="text" name ="pidpid" />
<input type="submit" name ="del" id="del" value="Delete"/>
</form>
</html>
<?phpif(isset($_POST['del'])){
echo "1";
$cn = @mysql_connect("localhost", "root", "");
if(!$cn){
echo "Cannot connect to MySQL server<br>";
exit;
}
mysql_select_db("Logistic");
$pid = (int)$_POST['pidpid'];
$str="DELETE FROM product WHERE product.PID = '$pid'";
echo $str;
mysql_query($str);
$delChk=mysql_affected_rows();
echo $delChk;
if ($delChk>=1){
mysql_close($cn);
echo '<script type="text/javascript">
alert("Delete product ID:' . $pid . ' successfully");
history.go(-1);
</script>';
} else {
mysql_close($cn);
echo '<script type="text/javascript">
alert("Delete product ID:' . $pid . ' error");
history.go(-1);
</script>';
}
}
?>