Ошибка в соединении php mysql с использованием xampp

Я пытаюсь подключить страницу HTML, используя форму PHP, к базе данных MySQL, используя Xampp. HTML-страница работает нормально, но как только я нажимаю кнопку «Отправить», появляется страница с различными символами, кто-нибудь может помочь с проблемой?! [Php page] [1]

HTML код:

    <html>
<body>
<body bgcolor="black">
<font color="white">

<form action="a.php" method="post">

<center>
<h1><font color = "gold"><marquee>Welcome to online bus booking!!!</h1></marquee>               </font color>
<h3>
First Name:<br><input type = "text" name = "fnm"><br>
Last name:<br><input type = "text" name = "lnm"><br>
Mobile:<br><input type = "text" name = "mob"><br>
Age:<br><input type = "number" name = "age"><br>
Source:<input type = "text" name = "src">
Destination:<input type = "text" name = "des"><br>
<font color="orange">Passenger Address:<br></font color>
Street:<br><input type = "text" name = "str"><br>
Area:<br><input type = "text" name = "area"><br>
City:<br><input type = "text" name = "cty"><br>

<input type = "submit">

</h3>
</center>
</form>

</body>
</html>

Код PHP:

    <?php
$con=mysqli_connect("localhost","root","","testdb");
if(mysqli_connect_error())
{
echo "FAILED" . mysqli_connect_error();
}
$sql="INSERT INTO exp VALUES('$_POST[fnm]', '$_POST[lnm]', $_POST[mob], $_POST[age],        '$_POST[src]', '$_POST[des]', '$_POST[str]', '$_POST[area]', '$_POST[cty]')";
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
echo "1 record added";
mysqli_close($con);
?>

0

Решение

Здесь, позвольте мне исправить синтаксис:

$sql="INSERT INTO exp VALUES('".$_POST['fnm']."','".$_POST['lnm']."','".$_POST['mob']."', '".$_POST['age']."','".$_POST['src']."','".$_POST['des']."','".$_POST['str']."','".$_POST['area']."', '".$_POST['cty']."')";
3

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

этот код неверен: $sql="INSERT INTO exp VALUES('$_POST[fnm]', '$_POST[lnm]', $_POST[mob], $_POST[age], '$_POST[src]', '$_POST[des]', '$_POST[str]', '$_POST[area]', '$_POST[cty]')";

как вы не ссылаетесь $_POST variables using their name , пропущенные кавычки вокруг имени переменной. исправьте строку и ваши данные должны быть успешно вставлены.

0

Попробуйте использовать следующий PHP и дайте нам знать, что происходит:

$sql="INSERT INTO `exp` VALUES('{$_POST['fnm']}', '{$_POST['lnm']}',
'{$_POST['mob']}', '{$_POST['age']}', '{$_POST['src']}', '{$_POST['des']}',
'{$_POST['str']}', '{$_POST['area']}', '{$_POST['cty']')"or die('Error: ' . mysqli_error($con));
$output = $con->$sql
echo "1 record added";
mysqli_close($con);

Есть ли что-нибудь по-другому?

Примечание: чтобы быть синтаксически правильным, вы бы хотели явно указать, куда вы хотите вставить значения, следующим образом:

$sql="INSERT INTO `table_name` (`first_value`, `second_value`, `third_value`)
VALUES ('{value1}', '{value2}', '{value3}');";
0

Я знаю, что уже слишком поздно, ребята, но я решил проблему. Это не значит, что мне понадобилось 3 года, чтобы решить ее, я просто забыл опубликовать ответ. Это происходило потому, что я редактировал php-код в Wordpad. Я скопировал и сохранил код в блокноте, и проблема была решена.

Спасибо за ваш ценный вклад, ребята.

0