如何在验证后从提交表单PHP发布数据
我刚刚从这个网站上看到了这些代码,并打算将其应用到我的项目中,但是我无法在下一页获得我的数据。我使用test.php作为索引,submit.php作为一个页面来捕获文章 这是密码 test.php如何在验证后从提交表单PHP发布数据,php,forms,post,Php,Forms,Post,我刚刚从这个网站上看到了这些代码,并打算将其应用到我的项目中,但是我无法在下一页获得我的数据。我使用test.php作为索引,submit.php作为一个页面来捕获文章 这是密码 test.php <!DOCTYPE HTML> <html> <head> <style> .error {color: #FF0000;} </style> </head> <body> <?php // Initializ
<!DOCTYPE HTML>
<html>
<head>
<style>
.error {color: #FF0000;}
</style>
</head>
<body>
<?php
// Initialize variables and set to empty strings
$firstName=$lastName="";
$firstNameErr=$lastNameErr="";
// Validate input and sanitize
if ($_SERVER['REQUEST_METHOD']== "POST") {
$valid = true; //Your indicator for your condition, actually it depends on what you need. I am just used to this method.
if (empty($_POST["firstName"])) {
$firstNameErr = "First name is required";
$valid = false; //false
}
else {
$firstName = test_input($_POST["firstName"]);
}
if (empty($_POST["lastName"])) {
$lastNameErr = "Last name is required";
$valid = false;
}
else {
$lastName = test_input($_POST["lastName"]);
}
//if valid then redirect
if($valid){
header('Location: submit.php');
exit();
}
}
// Sanitize data
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<h2>Find Customer</h2>
<p><span class="error">* required</span></p>
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']);?>" method="post">
First Name: <input type="text" name="firstName" value="<?php echo $firstName; ?>"><span class="error">* <?php echo $firstNameErr; ?></span><br><br>
Last Name: <input type="text" name="lastName" value="<?php echo $lastName; ?>"><span class="error">* <?php echo $lastNameErr; ?><br><br>
<input type="submit">
</form>
</body>
</html>
.错误{color:#FF0000;}
寻找客户
*必需的
您的表单操作应该是要获取表单提交值的文件
将您发布到test.php
的更改为submit.php
。如果我这样做,我将无法在将表单发送到submit.php之前验证表单。请在一页中完成验证并提交,提交后验证表单,如果有任何错误,请返回并显示它。或者您需要在此处再次将所有内容发送到submit.php:-if($valid){header('Location:submit.php');exit();}如果您永远不会将其发送到submit.php,它将如何获得它?
<?php
$test=$_POST['lastName'];
echo $test;