[英]Required Fields in PHP or Die
因此,我在以下方面遇到了麻烦:(让我知道您是否需要所有代码)。
$required = array('exam_id', 'subject', 'exam_date');
$error = false;
foreach($required as $field) {
if ( !empty($_POST['insert'])) {
$InsertQuery = "INSERT INTO Exam (exam_id, subject, exam_date) VALUES ('$_POST[uexam_id]','$_POST[usubject]','$_POST[uexam_date]')";
mysql_query($InsertQuery, $con);
$error = true;
}
}
if ($error) {
die ("All fields are required!");
echo "<a href='examisud.php'> Back to Form </a>";
}
本质上,我希望所有字段都是必需的。 并且当一个被忽略时,将弹出一个错误消息,提示“所有字段都是必需的”。 上面的代码无法正常工作,因为所有字段均已填写,错误弹出并没有将其添加到数据库中。 但是,当某个字段丢失时,将弹出错误,但实际上会将填充的字段添加到数据库中。 -insert语句不再起作用。 -当1个或多个字段保留为空白时,它起作用。 -我需要所有字段,当1保留为空白时,将弹出错误并显示文本,带您返回以完成表格。 在此先感谢您的帮助!
(此外,不必担心SQL注入,这是我自己的Wamp服务器上的个人项目)
如果我了解您的要求,那么您会想要: in_array
另外,您的代码非常不安全,我会采取预防措施,而且mysql_
函数现在已弃用。 您可能要研究mysqli_或PDO
in_array
将检查是否在数组中找到一个值。
$my_array = array("Your Value", "The Value", "Awesomeness");
if (in_array("Your Value", $my_array)) {
//success, it was found in our array
} else { /*Not found, do something.*/ }
我希望这可以澄清问题,我仍然不确定您要问的是什么,但是我认为这就是您要问的。
声明后查看错误的var_dump($InsertQuery)
单引号不传递值,而是按字面意义进行解释。 删除它们,查询将可操作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.