此代码适用于验证,但我无法让它与提交一起工作,我无法弄清楚原因。据我所知,问题出在PHP末尾的if语句中,以if开头((strlen($ valid_first_name) 我查看了许多教学网站,但无法弄清楚问题。我将非常感谢,帮助或指导!谢谢!
<?php
if($_POST)
{
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$phone = $_POST['phone'];
$email = $_POST['email'];
$year1 = $_POST['year1'];
$make1 = $_POST['make1'];
$model1 = $_POST['model1'];
$vehicle_type_id1 = $_POST['vehicle_type_id1'];
$pickup_city = $_POST['pickup_city'];
$pickup_state_code = $_POST['pickup_state_code'];
$dropoff_city = $_POST['dropoff_city'];
$dropoff_state_code = $_POST['dropoff_state_code'];
$vehicle_runs = $_POST['vehicle_runs'];
$ship_via_id = $_POST['ship_via_id'];
$estimated_ship_date = $_POST['estimated_ship_date'];
// First Name
if (preg_match("/^[A-Za-z -]{3,20}$/",$first_name))
{
$valid_first_name=$first_name;
}
else
{
$error_first_name='Enter valid First Name.';
}
// Last Name
if (preg_match("/^[A-Za-z -]{3,20}$/",$last_name))
{
$valid_last_name=$last_name;
}
else
{
$error_last_name='Enter valid Last Name.';
}
// Phone
if (preg_match("/^[0-9 -]{7,20}$/",$phone))
{
$valid_phone=$phone;
}
else
{
$error_phone='Enter valid Phone Number.';
}
// Email
if (preg_match("/^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.([a-zA-Z]{2,4})$/", $email))
{
$valid_email=$email;
}
else
{
$error_email='Enter valid Email.';
}
// Year
if (preg_match("/^[0-9 -]{2,20}$/",$year1))
{
$valid_year1=$year1;
}
else
{ $error_year1='Enter valid Vehicle Year.'; }
// Make
if (preg_match("/^[A-Za-z0-9 -]{2,25}$/",$make1))
{
$valid_make1=$make1;
}
else
{
$error_make1='Enter valid Vehicle Make.';
}
// Model
if (preg_match("/^[A-Za-z0-9 -]{2,25}$/",$model1))
{
$valid_model1=$model1;
}
else
{
$error_model1='Enter valid Vehicle Model.';
}
// Vehicle Type
if ($vehicle_type_id1==00)
{
$error_vehicle_type_id1='Select Vehicle Type';
}
else
{
$valid_vehicle_type_id1=$vehicle_type_id1;
}
// Pickup City
if (preg_match("/^[A-Za-z0-9 -]{3,20}$/",$pickup_city))
{
$valid_pickup_city=$pickup_city;
}
else
{
$error_pickup_city='Enter valid Pickup City.';
}
// Pickup state
if ($pickup_state_code==00)
{
$error_pickup_state_code='Select Pickup State.';
}
else
{
$valid_pickup_state_code=$pickup_state_code;
}
// Dropoff City
if (preg_match("/^[A-Za-z0-9 -]{3,20}$/",$dropoff_city))
{
$valid_dropoff_city=$dropoff_city;
}
else
{
$error_dropoff_city='Enter valid Dropoff City.';
}
// Dropoff state
if ($dropoff_state_code==00)
{
$error_dropoff_state_code='Select Dropoff State.';
}
else
{
$valid_dropoff_state_code=$dropoff_state_code;
}
// Vehicle Runs
if ($vehicle_runs==00)
{
$error_vehicle_runs='Does your vehicle run?';
}
else
{
$valid_vehicle_runs=$vehicle_runs;
}
// Ship Via
if ($ship_via_id==00)
{
$error_ship_via_id='Select how to ship.';
}
else
{
$valid_ship_via_id=$ship_via_id;
}
// Estimated Shipping Date
if (preg_match("/^[0-9]{1,2}\/[0-9]{1,2}\/[0-9]{4}$/",$estimated_ship_date))
{
$valid_estimated_ship_date=$estimated_ship_date;
}
else
{
$error_estimated_ship_date='Enter valid Shipping Date.';
}
if((strlen($valid_first_name)>0)&&(strlen($valid_last_name)>0)&&(strlen($valid_phone)>0)&&(strlen($valid_email)>0)&&(strlen($valid_year1)>0)&&(strlen($valid_make1)>0)&&(strlen($valid_model1)>0)&&(strlen($valid_vehicle_type_id1)>0)&&(strlen($valid_pickup_city)>0)&&($valid_pickup_state_code>0)&&(strlen($valid_dropoff_city)>0)&&($valid_dropoff_state_code>0)&&($valid_vehicle_runs>0)&& ($valid_ship_via_id>0)&& strlen($valid_estimated_ship_date>0))
{
//mysql_query(' SQL insert statement');
header("Location: thanks.html");
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Reg Form</title>
<!-- Meta Tags -->
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- CSS -->
<link rel="stylesheet" href="css/structure.css" type="text/css" />
<link rel="stylesheet" href="css/form.css" type="text/css" />
<!-- JavaScript -->
<script type="text/javascript" src="js/9lessons.js"></script>
<style type="text/css">
.err
{
font-size:11px;
padding-left:10px;
color:#CC0000;
float:left;
}
input
{
float:left;
}
</style>
</head>
<body id="public">
<div style="height:30px"></div>
<div id="container">
<div style="height:30px"></div>
<form autocomplete="on"
enctype="multipart/form-data" method="post" action="" name="form">
<ul>
<li id="foli1" class=" ">
<label class="desc" id="title1" for="Field1">
First Name </label>
<div>
<input id="first_name" name="first_name" type="text" class="field text medium" value="<?php echo $valid_first_name; ?>" maxlength="255" tabindex="1" /><span class="err"> <?php echo $error_first_name; ?></span>
</div>
</li>
<li id="foli2" class=" ">
<label class="desc" id="title1" for="Field2">
Last Name </label>
<div>
<input id="last_name" name="last_name" type="text" class="field text medium" value="<?php echo $valid_last_name; ?>" maxlength="255" tabindex="2" />
</div>
<div><span class="err"> <?php echo $error_last_name; ?></span>
</div>
</li>
<li id="foli3" class=" ">
<label class="desc" id="title3" for="Field3">
Phone</label>
<div>
<input id="phone" name="phone" type="text" class="field text medium" value="<?php echo $valid_phone; ?>" maxlength="255" tabindex="3" /><span class="err"> <?php echo $error_phone; ?></span>
</div>
</li>
<li id="foli4" class=" ">
<label class="desc" id="title4" for="Field3">
Email </label>
<div>
<input id="email" name="email" type="text" class="field text medium" value="<?php echo $valid_email; ?>" maxlength="255" tabindex="4" /><span class="err"> <?php echo $error_email; ?></span>
</div>
</li>
<li id="foli5" class=" ">
<label class="desc" id="title5" for="Field5">
Year </label>
<div>
<input id="year1" name="year1" type="text" class="field text medium" value="<?php echo $valid_year1; ?>" maxlength="255" tabindex="5" /><span class="err"> <?php echo $error_year1; ?></span>
</div>
</li>
<li id="foli6" class=" ">
<label class="desc" id="title6" for="Field6">
Make </label>
<div>
<input id="make1" name="make1" type="text" class="field text medium" value="<?php echo $valid_make1; ?>" maxlength="255" tabindex="6" /><span class="err"> <?php echo $error_make1; ?></span>
</div>
</li>
<li id="foli7" class=" ">
<label class="desc" id="title7" for="Field7">
Model </label>
<div>
<input id="model1" name="model1" type="text" class="field text medium" value="<?php echo $valid_model1; ?>" maxlength="255" tabindex="7" /><span class="err"> <?php echo $error_model1; ?></span>
</div>
</li>
<li id="foli8" class=" ">
<label class="desc" id="title8" for="Field8">
Vehicle type </label>
<div>
<select id="vehicle_type_id1" name="vehicle_type_id1" class="field select medium" tabindex="8" style="float:left">
<option value="00">Gender</option><option value="1">Male</option><option value="2">Female</option>
</select><span class="err"> <?php echo $error_vehicle_type_id1; ?></span>
</div>
</li>
<li id="foli9" class=" ">
<label class="desc" id="title9" for="Field9">
pickup city</label>
<div>
<input id="pickup_city" name="pickup_city" type="text" class="field text medium" value="<?php echo $valid_pickup_city; ?>" maxlength="255" tabindex="9" /><span class="err"> <?php echo $error_pickup_city; ?></span>
</div>
</li>
<li id="foli10" class=" ">
<label class="desc" id="title10" for="Field10">
pickup state </label>
<div>
<select id="pickup_state_code" name="pickup_state_code" class="field select medium" tabindex="10" style="float:left">
<option value="00">Gender</option><option value="1">Male</option><option value="2">Female</option>
</select><span class="err"> <?php echo $error_pickup_state_code; ?></span>
</div>
</li>
<li id="foli11" class=" ">
<label class="desc" id="title11" for="Field11">
Dropoff City </label>
<div>
<input id="dropoff_city" name="dropoff_city" type="text" class="field text medium" value="<?php echo $valid_dropoff_city; ?>" maxlength="255" tabindex="11" /><span class="err"> <?php echo $error_dropoff_city; ?></span>
</div>
</li>
<li id="foli12" class=" ">
<label class="desc" id="title12" for="Field12">
Dropoff State </label>
<div>
<select id="pickup_state_code" name="pickup_state_code" class="field select medium" tabindex="12" style="float:left">
<option value="00">Gender</option><option value="1">Male</option><option value="2">Female</option>
</select><span class="err"> <?php echo $error_pickup_state_code; ?></span>
</div>
</li>
<li id="foli13" class=" ">
<label class="desc" id="title13" for="Field13">
Runs? </label>
<div>
<select id="vehicle_runs" name="vehicle_runs" class="field select medium" tabindex="13" style="float:left">
<option value="00">Gender</option><option value="1">Male</option><option value="2">Female</option>
</select><span class="err"> <?php echo $error_vehicle_runs; ?></span>
</div>
</li>
<li id="foli14" class=" ">
<label class="desc" id="title14" for="Field14">
Ship Via? </label>
<div>
<select id="ship_via_id" name="ship_via_id" class="field select medium" tabindex="14" style="float:left">
<option value="00">Gender</option><option value="1">Male</option><option value="2">Female</option>
</select><span class="err"> <?php echo $error_ship_via_id; ?></span>
</div>
</li>
<li id="foli15" class=" ">
<label class="desc" id="title15" for="Field15">
Ship Date </label>
<div>
<input id="estimated_ship_date" name="estimated_ship_date" type="text" class="field text medium" value="<?php echo $valid_estimated_ship_date; ?>" maxlength="255" tabindex="15" /><span class="err"> <?php echo $error_estimated_ship_date; ?></span>
</div>
</li>
<li id="foli15" class=" "></li>
<li class="buttons">
<input type="submit" value="Submit" style=" background:#0060a1; color:#FFFFFF; font-size:14px; border:1px solid #0060a1"/>
</li>
</ul>
</form>
<div style="height:20px"></div>
</div><!--container-->
</body>
</html>
答案 0 :(得分:3)
是的,如果你以这样的结尾结束,那你就不会对你的(无休止的)最后结束:
... && strlen($valid_estimated_ship_date>0))
应该是:
.. && (strlen($valid_estimated_ship_date)>0))
答案 1 :(得分:3)
您提到的最后一行代码存在一些问题,请尝试以下方法:
if(strlen($valid_first_name) > 0 && strlen($valid_last_name) > 0 && strlen($valid_phone) > 0 && strlen($valid_email) > 0 && strlen($valid_year1) > 0 && strlen($valid_make1) > 0 && strlen($valid_model1) > 0 && strlen($valid_vehicle_type_id1) > 0 && strlen($valid_pickup_city) > 0 && strlen($valid_pickup_state_code) > 0 && strlen($valid_dropoff_city) > 0 && strlen($valid_dropoff_state_code) > 0 && strlen($valid_vehicle_runs) > 0 && strlen($valid_ship_via_id) > 0 && strlen($valid_estimated_ship_date) > 0) {
//mysql_query(' SQL insert statement');
header("Location: thanks.html");
}
你错过了一些strlen函数。您可能想考虑合并该代码,但这有点麻烦。
答案 2 :(得分:1)
当我们做这样的事情时,我们在顶部发起了一个名为
的变量$valid = true;
在其他任何部分制作
$valid = false;
最后你可以问
if($valid)
header("Location: thanks.html");