У меня есть три файла reg_form.php, dbconnection.php и insert.php. При отправке формы данные не вставляются в базу данных. Я не могу понять, почему. Вначале я не знал, как использовать вставку в несколько таблиц, но получил советы от многих сообщений отсюда. К сожалению, мне все еще не удалось заставить его работать, и это сводит меня с ума. Вот код sql до сих пор для вставки.
<?php
include ("dbconnection.php");
if(file_exists("dbconnection.php")) {
echo"Connected to database successfully";
} else if(!file_exists("dbconnection.php")){
echo "Connection failed";
}
$forename = "forename";
$surname = "surname";
$address_line1 = "address_line1";
$address_line2 = "address_line2";
$address_line3 = "address_line3";
$city = "city";
$postcode = "postcode";
$phone = "phone";
$email = "email";
$username = "username";
$password = "password";
$cpassword = "cpassword ";
$query = "INSERT INTO users (username,
password)VALUES('$username','$password');";
$query2 = "INSERT INTO users_details (forename, surname,address_line1,
address_line2, address_line3, city, postcode, phone, email)
VALUES('$forename','$surname','$address_line1','$address_line2',
'$address_line3','$city','$postcode','$phone','$email')";
query ($dbconnection,$sql);
?>
Ok проблема решена. Я сделал хранимую процедуру, потому что я делаю INSERT INTO в нескольких таблицах, а затем вызываю ее так. $ sql = "CALL add_user ('". $ username. "', '". $ password. "', 'user', '". $ forename. "', '". $ surname. "', '". $ address_line1. "','". $ address_line2. "','". $ address_line3. "','". $ city. "','". $ postcode. "','". $ phone. "', '. $ email. "', '". is_bool ($ email_contact). ",".is_bool ($ phone_contact). "')"; $ query = $con-> подготовить ($ sql);
$query->execute();
query()
которая, я уверен, не является функцией запроса к базе данных, вы используете PDO или mysqli? Во-вторых, вы используете$sql
в своем запросе, и это не используется ни в одной части предоставленного кода.include
вrequire
. Это по-прежнему не означает, что соединение работает.