Mysql вставка не удается в сценарии

Я ломал голову против этого и до сих пор не могу понять, почему бы это не сработало

include ("db_conn.php");

//function for sanitizing the user input
function clean_input($data)
{
$data = stripslashes($data);
$data = trim($data);
$data = htmlspecialchars($data);
return $data;
}
//registration form data validation
if(!empty($_POST['s_register_submit']))
{
$Salutation= $F_Name= $L_Name= $email= $pass= $P_Number = "";

$Salutation= clean_input($_POST['Salutation']);
$F_Name= clean_input($_POST['F_Name']);
$L_Name= clean_input($_POST['L_Name']);
$email= clean_input($_POST['email']);
$pass= clean_input($_POST['pass']);
$P_Number= clean_input($_POST['P_Number']);
$query= "INSERT INTO STUDENT (Salutation, F_Name, L_Name, email, password, phone)
VALUES
(`$Salutation`,`$F_Name`,`$L_Name`,`$email`,`$pass`,`$P_Number`)";

$query1= mysqli_query($dbhandle,$query) || die("Unable to insert");
echo "Saved";

А вот и содержимое для db_conn.php

$user="root";
$password="";
$host="localhost";
$dbname="Interns";

$dbhandle=mysqli_connect($host, $user, $password, $dbname);
if(!$dbhandle)
{
die("Unable to connect");
}
echo "Connected";

При запуске db_conn.php напрямую или через сценарий, в который он включен, он повторяет «Подключено», но запрос все еще возвращает «Невозможно вставить».

0

Решение

Вы заключаете строки в кавычки, а не в галочки. Тики зарезервированы для идентификаторов.

$query= "INSERT INTO STUDENT (Salutation, F_Name, L_Name, email, password, phone)
VALUES
(`$Salutation`,`$F_Name`,`$L_Name`,`$email`,`$pass`,`$P_Number`)";

должно быть

$query= "INSERT INTO STUDENT (Salutation, F_Name, L_Name, email, password, phone)
VALUES
('$Salutation','$F_Name','$L_Name','$email','$pass','$P_Number')";
3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]