我对PHP很陌生,我一整天都在谷歌上搜索我的代码有什么问题,但我找不到符合我想要的输出的东西;为了让您更好地了解我的担忧,我在下面编写了我的代码。
<?php
if (empty($lname) && empty($fname)) {
echo"WARNING: Unable to save information, Blank fields found, Enter N/A if it is not applicable for the employee.";
} else if ($query) {
echo"WARNING: Unable to save information, Employee already exist in the database.";
} else if ($save) {
echo"$fname $lname's personal information saved succesfully.";
}
?>
第一个条件检查值是否为空,第二个条件检查数据库中是否已存在值,如果上述两个条件不为真,则第三个条件保存值。
如果我一次运行一个条件,则所有三个条件都有效,但是当我使用if ... else语句将它们组合在一起时,第三个条件不起作用。
我想请求您的帮助,并启发我在代码中遗漏的内容。
答案 0 :(得分:0)
您错误地使用了$query
。使用mysql_num_rows
检查SELECT
查询中返回的行数:
if (empty($lname)&&empty($fname)) {
echo "WARNING: Unable to save information, Blank fields found, Enter N/A if it is not applicable for the employee.";
} else if (mysql_num_rows($query) > 0) {
echo "WARNING: Unable to save information, Employee already exist in the database.";
} else if ($save) {
echo "$fname $lname's personal information saved succesfully.";
}
请注意,mysql_*
方法已弃用,应替换为更现代的库。您可以通过快速搜索和查看PHP文档找到许多相关主题(请参阅上面引用的mysql_num_rows
链接中的红框?)