PHP-将表单输入添加到数据库中
我正在尝试将恢复的表单输入添加到数据库中PHP-将表单输入添加到数据库中,php,Php,我正在尝试将恢复的表单输入添加到数据库中 <form action="index.php" method="post"> <input type="text" name="firstname" id="firstname"> <br> <input type="text" name="lastname" id=&qu
<form action="index.php" method="post">
<input type="text" name="firstname" id="firstname">
<br>
<input type="text" name="lastname" id="lastname">
<br>
<input type="submit" name="submit" value="Submit">
示例:Firstname=Jason/Lastname=Haw
单击提交按钮后,我看到错误消息:字段列表中的未知列“Jason”
哪里做错了?$query=“插入用户(firstname,lastname)值(“$firstname”,“$lastname”)”代码>
为$firstname单独报价
但这不是一个正确的方法,您应该使用预先准备好的语句。
您的查询存在sql注入的风险,因为无法逃避输入。非常感谢。为什么我需要添加单个报价?我是mysql的新手,我一步一步地通过示例。因为$query是字符串。如果不使用单引号/双引号,查询将变成插入用户(firstname,lastname)值(abc,abc)
,abc将视为列名而不是值请注意:您对SQL注入非常开放,应该使用参数化的预处理语句,而不是手动构建查询。它们由PDO或MySQLi提供。不要相信任何类型的输入。您的代码不安全。使用事先准备好的陈述。
if(isset($_POST['submit'])) {
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
$query = "INSERT INTO users (firstname, lastname) VALUES ($firstname, $lastname)";
if($conn->query($query) === true) {
echo "added";
}else {
echo $con->error;
}