获取表单数据
<?php if ($_SERVER["REQUEST_METHOD"] === "POST") { // 处理表单数据 $name = $_POST["name"]; $email = $_POST["email"]; $message = $_POST["message"]; } ?>
使用 $_POST
关联数组从提交的表单中获取数据。该数组的键对应于表单元素的名称属性。
数据验证
在处理数据之前,验证其格式和内容至关重要。PHP 提供了多种函数来验证数据类型、长度和格式。
if (empty($name) || empty($email) || empty($message)) {
// 显示错误消息
}
使用 empty()
函数检查字段是否为空。利用 strlen()
和 filter_var()
等函数验证其他约束。
数据处理
一旦数据已验证,就可以执行所需的处理,例如将其存储在数据库中、发送电子邮件或执行其他操作。
$mysqli = new mysqli("localhost", "root", "password", "database");
// 准备和执行查询
$stmt = $mysqli->prepare("INSERT INTO users (name, email, message) VALUES (?, ?, ?)");
$stmt->bind_param("sss", $name, $email, $message);
$stmt->execute();
// 关闭连接
$mysqli->close();
使用 MySQLi 扩展插入数据。使用 prepare()
和 bind_param()
准备查询,然后用 execute()
执行查询。
错误处理
处理表单数据期间可能发生错误。使用 try-catch
块来捕获异常并优雅地处理它们。
try {
// 处理表单数据
} catch (Exception $e) {
// 显示错误消息
}
捕获异常,例如 PDOException
或 InvalidArgumentException
,并向用户提供适当的反馈。
最佳实践
- 使用服务器端验证以防止恶意提交。
- 使用输入过滤函数来清除用户输入的内容。
- 考虑使用 CSRF 保护来防止跨站点请求伪造攻击。
- 在处理数据之前始终验证输入。
- 使用错误处理来优雅地处理异常情况。
- 记录表单提交以进行调试和分析。