我正在尝试从表单提交中将数据插入表中。我已经确保与数据库有连接。我想知道我是否正确地做到了这一点。这是我的代码。
//INSERT INTO TABLE
$name = trim($_POST['name']);
$bio = trim($_POST['bio']);
$email = trim($_POST['email']);
if(isset($name, $bio, $email)) {
if($db->query("
INSERT INTO users(name, bio,email, created,updated)
VALUES ('{$name}', '{$bio}','{$email}', NOW())")) {
echo 'number of rows effected by the INSERT:', $db->affected_rows;
}
}
请记住,我只是新的PHP,感谢您的帮助。
答案 0 :(得分:4)
我假设你已经在你发布的内容之前的行中创建了一个PDO数据库连接。
最好和最安全的方法是使用预准备语句和参数绑定。
$stmt = $db->prepare("INSERT INTO users(name, bio,email, created,updated)
VALUES (:name, :bio, :email, NOW())");
然后,您可以执行查询并将值绑定到参数:
$stmt->execute(array("name"=>$name,
"bio"=>$bio,
"email"=>$email));
或者,您可以按上述方式准备查询,并使用bindValue()
函数将值绑定到参数,然后执行它:
$stmt->bindValue(':name', $name, PDO::PARAM_STR);
$stmt->bindValue(':bio', $bio, PDO::PARAM_STR);
$stmt->bindValue(':email', $email, PDO::PARAM_STR);
$stmt->execute();