![](/img/trans.png)
[英]How to stop execution of PHP script when a certain condition is met in IF statement?
[英]PHP / MySQL: How to use INSERT INTO only if certain condition is met
我是 MySQL 的新手,希望有人能幫我解決這個問題。
我目前使用以下內容作為 PHP 中較長語句的一部分,以便向按預期工作的 db 表寫入一些內容:
$stmt = $conn->prepare("INSERT INTO History (email, year, halfYear, language, content) VALUES (?, ?, ?, ?, ?)");
$stmt->bind_param("siiss", $email, $year, $halfYear, $language, $content);
$stmt->execute();
$result = $stmt->get_result();
如何檢查相應的電子郵件地址( $email
) 是否已經在數據庫中有 3 個條目,並且僅在數據庫中有 2 個或更少條目時才寫入數據庫(否則我只想回顯一些內容)?
我想我可以使用類似$result->num_rows
東西,但不確定如何在這里應用它。
有人可以幫我弄這個嗎 ?
提前非常感謝,邁克
根據 OP 的要求。
您首先需要計算條件語句內 SELECT all 集合中的結果。
如果查詢符合條件,則執行下一個。
使用 num_rows 的示例:
if($result->num_rows == 3){
// do something
}
else {
// do something else
}
或num_rows >= 3
如果您還想檢查是否等於和/或大於 3。
參考:
邊注:
使用year
時要小心,它是 MySQL 的保留關鍵字:
您仍然可以使用它,但只要您將其包裹在刻度中即可。
IE:
(email, `year`, halfYear, language, content)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.