如何在发送前验证表单数据?我有一个名为address.php
的文件,它检查输入的数据以确保它符合。这是我的尝试,但它不是在提交时调用函数(我不想使用JS):
function validate(){
include('checkaddress.php'); //checks data conforms
if (empty($_POST['address']) && checkAddress($_POST['address']) == 0)
{
echo ("<fieldset><legend>Invalid Address</legend><p id='form' style='color:red;'><b>Invalid Address </b></fieldset>");
return false;
}
else
{
return true;
}
}
<form method="post" action="address.php">
<fieldset>
<table style="float:center!improtant; text-align:center!important; margin-left:auto!important;margin-right:auto!important;">
<tr><legend>Address</legend></tr>
<tr><td>
<label for="email">address:</label>
<input type="text" name="address" id="address" size="32" maxlength="128">
</tr></td>
<tr><td>
<input type="submit" name="submit" onsubmit="return validate();" value="Submit" >
//Call function upon submit. I've tried 'onsubmit="validate();"'
</tr></td>
</table>
</fieldset>
</form>
谢谢。
答案 0 :(得分:1)
如果没有javascript,你就无法做到。
要使用php验证它,您需要使用javascript(例如$.ajax)将其发送到您的服务器或提交表单,然后使用php验证。
老实说,首先使用JS验证客户端通常是一种更好的用户体验。这并不意味着你也不应该验证服务器端(PHP),因为你肯定应该这样做。