PHP menyediakan fungsi untuk membuat dan memproses borang web interaktif, termasuk: mencipta elemen borang (menggunakan HTML untuk menentukan medan menggunakan $_POST atau $_GET untuk mengakses data borang menggunakan filter_var() untuk mengesahkan input menggunakan mesej ralat; kesilapan.
Buat borang web interaktif menggunakan fungsi PHP
Pelbagai fungsi tersedia dalam PHP untuk membantu mencipta dan memproses borang web interaktif. Artikel ini menerangkan cara menggunakan fungsi ini untuk membina bentuk berfungsi sepenuhnya.
1. Cipta elemen borang
Kami menggunakan HTML untuk mentakrifkan elemen borang, seperti yang ditunjukkan di bawah:
<form action="process.php" method="post"> <label for="name">姓名:</label> <input type="text" id="name" name="name" required> <label for="email">邮箱:</label> <input type="email" id="email" name="email" required> <input type="submit" value="提交"> </form>
2 Gunakan fungsi PHP untuk memproses data borang
Selepas pengguna menyerahkan borang, anda boleh menggunakan <. fungsi kod>$_POST atau $_GET
untuk mengakses data borang. $_POST
或 $_GET
函数来访问表单数据。
对于上述表单,我们可以使用以下 PHP 代码处理数据:
<?php if ($_SERVER["REQUEST_METHOD"] == "POST") { $name = $_POST['name']; $email = $_POST['email']; // 在这里处理表单数据 } ?>
3. 验证表单输入
为了确保表单输入有效,可以使用 PHP 的验证函数,例如 filter_var()
<?php if (filter_var($email, FILTER_VALIDATE_EMAIL)) { // 有效的电子邮件地址 } else { // 无效的电子邮件地址 } ?>
filter_var()
: <?php if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { echo "<p>无效的电子邮件地址</p>"; } ?>
<!-- form.php --> <form action="process.php" method="post"> <label for="username">用户名:</label> <input type="text" id="username" name="username" required> <label for="password">密码:</label> <input type="password" id="password" name="password" required> <input type="submit" value="注册"> </form>
<!-- process.php --> <?php if ($_SERVER["REQUEST_METHOD"] == "POST") { // 获取表单数据 $username = $_POST['username']; $password = $_POST['password']; // 验证表单输入 if (!preg_match('/^[a-zA-Z0-9]+$/', $username)) { echo "<p>无效的用户名</p>"; } else if (!preg_match('/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$/', $password)) { echo "<p>无效的密码</p>"; } else { // 密码散列和插入数据库 $hashedPassword = password_hash($password, PASSWORD_DEFAULT); $query = "INSERT INTO users (username, password) VALUES (?, ?)"; $stmt = $conn->prepare($query); $stmt->bind_param('ss', $username, $hashedPassword); $stmt->execute(); echo "<p>注册成功!</p>"; } } ?>
Atas ialah kandungan terperinci Cipta borang web interaktif menggunakan fungsi PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!