[英]Run 2 MySQL update queries in one PHP file
我試着跑
// Create connection
$conn = new mysqli($servername,$username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "UPDATE pm_videos SET `description` = REPLACE( `description` ,'Facebook', '')";
$sql = "UPDATE pm_videos SET `description` = REPLACE( `description` ,'Twitter', '')";
if ($conn->query($sql) === TRUE) {
echo "Record updated successfully";
} else {
echo "Error updating record: " . $conn->error;
}
$conn->close();
但只有Twitter被取代。 我是PHP新手。 也許有人可以幫我解決這個問題。 謝謝。
$conn->query($sql)
語句運行您的查詢。 您將在運行前覆蓋第一個$sql
(Facebook中的第一個)。 你想做類似的事情
$sql = "UPDATE pm_videos SET `description` = REPLACE( `description` ,'Facebook', '')";
if ($conn->query($sql) === TRUE) {
echo "Record updated successfully with Facebook";
} else {
echo "Error updating record: " . $conn->error;
}
$sql = "UPDATE pm_videos SET `description` = REPLACE( `description` ,'Twitter', '')";
if ($conn->query($sql) === TRUE) {
echo "Record updated successfully with Twitter";
} else {
echo "Error updating record: " . $conn->error;
}
您的第一個查詢將不會執行,因為$ sql字符串將被覆蓋,最終您僅執行第二個查詢。
由於您多次執行同一查詢(僅更改參數),因此建議您使用准備好的語句和占位符,如下所示:
$sql = "UPDATE pm_videos SET `description` = REPLACE(`description`, ?, '')";
$conn = new mysqli($servername,$username, $password, $dbname);
$stmt = $conn->prepare($sql);
$stmt->bind_param('s', $content);
$content='facebook';
$stmt->execute();
$content='twitter';
$stmt->execute();
$stmt->close();
$conn->close();
(我刪除了所有錯誤檢查,您可能想添加自己的錯誤檢查例程)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.