当您单击页面底部的“提交”按钮时,没有任何反应。我只是想要它来验证用户输入,而目前我只专注于名称字段,而无法获取它来验证名称字段中的任何输入。没有错误消息弹出或任何东西。请查看并提供任何建议,我找不到我的错误。
PHP部分,变量已初始化并设置为空。以及post方法和isset函数
<?php
//define variables and set them to empty values
$fname_error= $phone_error= $address1_error= $address2_error= $city_error= $state_error= $zipcode_error= "";
$fname= $phone= $address1= $address2= $city= $state= $zipcode= "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["fname"])) {
$fname_error = "Missing";
}
else {
$fname = test_input($_POST["fname"]);
//now we check to see that the name only contains letters and whitespace
if (!preg_match("/^[a-zA-Z ]*$/",$fname)) {
$fname_error = "Please use letters and white space only";
}
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
HTML部分:
<div class="userinput">
<label for="fname"><b>First Name</b></label>
<input type="text" name="fname" value="<?php
echo $fname ?>">
<span class="error">
<?php echo $fname_error;?></span>
</div>
答案 0 :(得分:0)
美好的一天。这只是一个假设,由于我无法检查整个代码,但是我可能错了,但是您同一页上的表单不能超过1个。因为,您需要一个打开和关闭表单标签,该标签将页面上的所有表单元素包装起来。如果表单字段包含在表单元素中,则仅将其视为表单的一部分。并且做在同一页面上有多个表单。
此外,您应该考虑将代码最小化为仅需要的代码。
希望这会有所帮助!