我正试图跟踪提交时在我的网站表单上留下空白的字段。
我正在使用的表单是由我的销售代理使用的,因为在销售代理有机会修改提交的信息之前,我没有立即看到提交的信息,所以我正在查看他们是否正在填写网站上的所有信息,而不是稍后在CRM中添加更多信息。这将帮助我优化他们使用的形式。目前,表单是使用HTML、PHP、jQuery和AJAX编写的。
我还没有尝试过任何东西,因为我甚至不知道从哪里开始。我以前从未见过这样做。
如果你需要看加价,或者这个问题需要更多的澄清,请告诉我。如果最容易的话,请告诉我教程的方向。
谢谢你的帮助!
这就是PHP empty()的作用:
if (empty(trim($_POST['some_field']))
{
// Nothing was supplied.
}
所以,你可以像这样创建一个'required'字段数组:
$required = array('this', 'that', 'the', 'other');
…然后循环它们:
$errors = false;
foreach ($required as $field)
{
$field_value = isset($_POST[$field]) ? trim($_POST[$field]) : null;
if (empty($field_value))
{
$errors[] = 'The "' . $field . '" field was not submitted.';
}
}
if ($errors)
{
// Do something now that you know there are missing fields.
// Here, we're sending an email...
$subject = 'These fields were not filled out';
$body = 'The following errors occurred: ' . implode(', ', $errors);
mail('email@example.com', $subject, $body);
}
我认为您想知道在提交之前如何检查和验证表单信息。正如你所说,你使用jQuery,所以我建议至少有两种解决方案来解决这个问题。
1、自己编写验证脚本
您可以使用下面的脚本在提交之前检查表单数据。
jQuery(form).submit(function(){
// Here you can validate your form data
// and if the data are incorrect,
// you can return false, and the form submission will be cancelled
});
2、使用jQuery验证插件
插件可以从http://jqueryvalidation.org/获得,你可以用下面的脚本导入它。
<script type="text/script" src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.13.0/jquery.validate.js"></script>
然后,你只需要在表单中添加一些特殊的属性。
例如,如果您在输入字段中添加"required",这意味着该字段必须用字符填充。
<form>
<input type="text" name="username" required />
</form>
然后,编写以下脚本通知插件在提交之前验证表单。
<script type="text/javascript">
jQuery(document).ready(function(){
jQuery("form").validate();
});
</script>
您可以在PHP或JS中检查。如果您想在服务器端这样做,那么您可以保存这些信息,只需检查表单的POST结果。
if (trim($_POST['myField'])=="") {
//not filled out. if you have default values, check for it in the if above too.
mail('your@email.com', 'Subject', 'Your body.');
}