php实现添加
PHP 实现数据添加功能
使用 PHP 向数据库添加数据通常涉及表单提交、数据验证和数据库操作。以下是实现的基本流程:
创建 HTML 表单
<form action="add.php" method="post">
<input type="text" name="username" placeholder="用户名">
<input type="email" name="email" placeholder="邮箱">
<input type="password" name="password" placeholder="密码">
<button type="submit">添加用户</button>
</form>
处理表单提交 (add.php)
<?php
// 连接数据库
$conn = new mysqli('localhost', 'username', 'password', 'database');
// 检查连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 获取表单数据
$username = $_POST['username'];
$email = $_POST['email'];
$password = password_hash($_POST['password'], PASSWORD_DEFAULT);
// 准备SQL语句
$stmt = $conn->prepare("INSERT INTO users (username, email, password) VALUES (?, ?, ?)");
$stmt->bind_param("sss", $username, $email, $password);
// 执行插入
if ($stmt->execute()) {
echo "记录添加成功";
} else {
echo "错误: " . $stmt->error;
}
// 关闭连接
$stmt->close();
$conn->close();
?>
数据验证增强
在插入数据库前应对数据进行验证:
// 验证用户名
if (empty($_POST['username'])) {
die("用户名不能为空");
}
// 验证邮箱格式
if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
die("邮箱格式不正确");
}
// 验证密码长度
if (strlen($_POST['password']) < 8) {
die("密码至少需要8个字符");
}
使用 PDO 实现
PDO 提供了更安全的数据库操作方式:
<?php
try {
$pdo = new PDO('mysql:host=localhost;dbname=database', 'username', 'password');
$stmt = $pdo->prepare("INSERT INTO users (username, email, password) VALUES (:username, :email, :password)");
$stmt->execute([
':username' => $_POST['username'],
':email' => $_POST['email'],
':password' => password_hash($_POST['password'], PASSWORD_DEFAULT)
]);
echo "记录添加成功";
} catch(PDOException $e) {
echo "错误: " . $e->getMessage();
}
?>
文件上传实现
如需同时上传文件:
<form enctype="multipart/form-data" method="post">
<input type="file" name="userfile">
</form>
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["userfile"]["name"]);
if (move_uploaded_file($_FILES["userfile"]["tmp_name"], $target_file)) {
echo "文件上传成功";
} else {
echo "文件上传失败";
}
以上代码展示了 PHP 实现数据添加的基本方法,包括表单处理、数据库操作和数据验证。实际应用中应根据具体需求进行调整,并考虑安全性措施如防止 SQL 注入、XSS 攻击等。







