先の謝罪。今日は、php を使用する最初の日で、最終的に自分のページをそれ自体にポストする方法を見つけました (ページを .php ではなく .html として持っていました)。フォームが検証された後、データを新しいページに移動します。私はかなり長い間それに取り組んできました、そして私は揚げられています。簡単な例を次に示します。
<!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") {
if (empty($_POST["firstName"])) {
$firstNameErr = "First name is required";
}
else {
$firstName = test_input($_POST["firstName"]);
}
if (empty($_POST["lastName"])) {
$lastNameErr = "Last name is required";
}
else {
$lastName = test_input($_POST["lastName"]);
}
}
// 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>
わかった。上記のように、フォームが検証できるようにフォームがそれ自体にポストされていることがわかります。良い。さて、すべてが有効であることを考えると、データを実際に処理できるように、別のスクリプト (action="otherAction.php" など) に投稿するにはどうすればよいでしょうか?
また、セキュリティに関する提案は大歓迎です。セキュリティを考慮して最善を尽くしました。ありがとう。