作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 MySQL 的新手,希望有人能帮助我。
我目前将以下内容用作 PHP 中较长语句的一部分,以便将某些内容写入按预期工作的数据库表:
$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 set 中的结果。
如果查询符合条件,则执行下一个。
使用 num_rows 的示例:
if($result->num_rows == 3){
// do something
}
else {
// do something else
}
或 num_rows >= 3
您是否也想检查是否等于和/或大于 3。
引用:
旁注:
小心使用 year
它是 MySQL 保留关键字:
您仍然可以使用它,但只要您将它包裹在刻度中即可。
即:
(email, `year`, halfYear, language, content)
关于PHP/MySQL : How to use INSERT INTO only if certain condition is met,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31706548/
我是一名优秀的程序员,十分优秀!