我需要使用php和javascript验证一个空字段,但这两种方法都失败了。
<form method="POST" name="contact_form"
action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>">
<input type="text" name="pickupaddress" value="<?
if($pickupaddress == ''){
echo "";}
else{echo htmlentities($pickupaddress);}?> " id="pickupaddress"/>
<input type ="submit" name="submit" value"Reserve"/>
</form>
//////// Php validation DOES NOT WORK////////
$pickupaddress ='';
$err ='';
$pickupaddress = $_POST['pickupaddress'];
if($pickupaddress == ''){ //if empty field, I also tried == ""
$err.="Please provide pick up address.";
}
///// Javascript validation does not work.
if(form.pickupaddress ==""){
alert("empty address!");
}
//当我点击提交时没有任何反应。 //我认为问题出在
htmlentities($pickupaddress);
//感谢您的帮助。
答案 0 :(得分:1)
在php端,您可以尝试修剪该值,然后在下一行使用empty(),但这也会使0,false,null和其他此类值无效。或者您可以尝试使用isset。
对于javascript方面,您可以尝试此功能:
function IsEmpty(aTextField) {
if ((aTextField.value.length==0) ||
(aTextField.value==null)) {
return true;
}
else { return false; }
}
答案 1 :(得分:1)
希望答案更简单:
$pickupaddress = trim($_POST['pickupaddress']); //trims the string
if (empty($pickupaddress)){ //if empty field
$err.="Please provide pick up address.";
}
答案 2 :(得分:1)
$cid = $_POST['category'];
if (!empty($_POST['category']))
{
echo "<script>alert('empty field');</script>";
}
答案 3 :(得分:0)
您在哪里定义pickupaddress
?是在表格之前还是之后?如果未定义变量,并且根据您的服务器配置,输入的value
字段可能是
Notice: undefined variable pickupaddress
从而产生值!= ''
。
查看您的网页来源,确保value
确实为空。
答案 4 :(得分:0)
你的字符串中有一个spave:“echo htmlentities($pickupaddress);}?> "
也许这就是原因,因为它不是一个空字符串,但它是一个空格?
<form method="POST" name="contact_form"
action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>">
<input type="text" name="pickupaddress" value="<?
if($pickupaddress != '') {
echo htmlentities($pickupaddress);
}?>" id="pickupaddress"/>
<input type ="submit" name="submit" value"Reserve"/>
</form>
我想你可能想检查是否设置了帖子值:
if(isset($_POST['pickupaddress'])) {
$pickupaddress = $_POST['pickupaddress'];
}
php方式对我有用;)(如果我不写任何东西,则会显示该消息)