[英]How do I insert my form datas into my phpmyadmin database?
I'm having problems with inserting my form data into the database. 我在将表单数据插入数据库时遇到问题。 Help!! 救命!!
if($_SERVER["REQUEST_METHOD"] == "POST" ){
if(!empty($_POST)){
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "data";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "INSERT INTO cases (name, email, case, phone, address) VALUES ('{$conn->real_escape_string($_POST['name'])}', '{$conn->real_escape_string($_POST['email'])}',
'{$conn->real_escape_string($_POST['message'])}', '{$conn->real_escape_string($_POST['phone'])}', '{$conn->real_escape_string($_POST['address'])}')";
$insert = $conn->query($sql);
$conn -> close();
});
Case is a MySQL reserved word. 大小写是MySQL的保留字。 You have to enclose it in back ticks `. 您必须将其括在反勾号`中。 Changed to prepared statement. 更改为准备好的语句。
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
try{
$db = mysqli_connect($host, $user, $pass, $db);
}catch (Exception $e){
$error = $e->getMessage();
echo $error;
}
$sql = '
INSERT INTO cases
(name, email, `case`, phone, address)
VALUES
(?,?,?,?,?)
';
try{
$stmt = $db->prepare($sql);
$stmt->bind_param('sssss',$_POST['name'],$_POST['email'],$_POST['message'],$_POST['phone'],$_POST['address']);
$stmt->execute();
} catch(Exception $e) {
var_dump($e);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.