簡體   English   中英

嘗試將mysql表ID行放入php變量以從中獲取更多mysql查詢

[英]Trying to get a mysql table id row into php variable to base futher mysql queries from it

我正在使用PHP,HTML和SQL進行編程,並且陷入了項目的某些部分。

在下面的代碼中,我嘗試接收一個字符串,該字符串用於表示按下按鈕后來自文本框中的電影名稱。 然后,我嘗試搜索該電影的ID,然后在存在該ID的每個其他表中嘗試刪除與該ID關聯的所有數據,然后從主表本身中刪除有關電影的數據。 但是,每次嘗試其他方法時,我都會遇到很多無法解決的錯誤。

當電影名稱為“綠色英里”時,有人可以指出一種刪除ID為3的電影的所有表記錄的好方法嗎?

<?php
IF ($_SERVER["REQUEST_METHOD"] == "POST") {
$con=mysqli_connect("localhost","root","","bazus");
// Check connection
if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
mysql_query('SET foreign_key_checks = 0');
$tytul = mysqli_real_escape_string($con, $_POST['tytul']);
$id = "SELECT id FROM filmy WHERE tytul=$tytul";
$dana = mysql_query($id);
$film_przyznano =  "DELETE FROM przyznana WHERE filmy_id='$dana'";
$premiera = "DELETE FROM premiera WHERE filmy_id='$dana'";
$obsada = "DELETE FROM obsada WHERE filmy_id='$dana'";
$film_gatunek = "DELETE FROM film_gatunek WHERE filmy_id='$dana'";
$rezyseria = "DELETE FROM rezyseria WHERE filmy_id='$dana'";
$scenariusz = "DELETE FROM scenariusz WHERE filmy_id='$dana'";
$film_producent = "DELETE FROM film_producent WHERE filmy_id='$dana'";
//mysql_query($film_przyznano);
//mysql_query($obsada);
//mysql_query($premiera);
//mysql_query($film_gatunek);
//mysql_query($rezyseria);
//mysql_query($scenariusz);
//mysql_query($film_producent);
/*$sql="DELETE FROM filmy WHERE tytul='$tytul'";

        if (!mysqli_query($con,$sql)) {
          die('Error: ' . mysqli_error($con));
        }
        echo "1 record deleted";

$tytul="";*/
mysql_query('SET foreign_key_checks = 1');
}
?>

<div id="remove">
<form action='<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>' method='post'>
<input type="text" name="tytul">
<input type="submit">
</form>

</div>

在我看來,您的代碼不錯。 您缺少的是錯誤處理。 如果第13行未返回結果,則$ dana不等於任何值,這將對您的所有查詢結果拋出錯誤。

您應該在這之后添加一行

if ($dana > 0) {
  // do your delete queries
} else {
  // do nothing echo error
  echo "No movie found";
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM