Как вставить данные формы в базу данных phpmyadmin? - PullRequest
0 голосов
/ 05 июля 2019

У меня проблемы с вставкой данных формы в базу данных. Помогите !!

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();
    });

1 Ответ

0 голосов
/ 05 июля 2019

Регистр является зарезервированным словом MySQL.Вы должны заключить его в задние галочки `.Изменено на подготовленное заявление.

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);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...