Мне нужно подключить форму к базе данных, которая у меня уже есть, но она не подключается, и я не могу найти проблему. Я чаще всего появляется ошибка "mysqli", но я не могу найти ее причину.
--order.php--
<!DOCTYPE html>
<html>
<head>
<title>Checkout</title>
<link rel = "stylesheet" href = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"/>
<link rel = "stylesheet" href = "styles.css"/>
</head>
<body>
<div class = "col-sm-5 clearfix">
<div class = "bill-to">
<h2>Bill To</h2>
<div class = "form-one">
<form action = "order.php" method = "POST">
<input type = "text" id = "FirstName" name = "FirstName" placeholder = "First Name" style = "width:350px; background-color:pink;"><br>
<input type = "text" id = "Surname" name = "Surname" placeholder = "Last Name" style = "width:350px;background-color:pink;"><br>
<input type = "text" id = "HouseName" name = "HouseName" placeholder = "House Name" style = "width:350px;background-color:pink;"><br>
<input type = "text" id = "StreetName" name = "StreetName" placeholder = "Street Name" style = "width:350px;background-color:pink;"><br>
<input type = "text" id = "Locality" name = "Locality" placeholder = "Locality" style = "width:350px;background-color:pink;"><br>
<input type = "text" id = "MobileNumber" name = "MobileNumber" placeholder = "Mobile Number" style = "width:350px;background-color:pink;"><br>
<input type = "text" id = "Email" name = "Email" placeholder = "Email Address" style = "width:350px;background-color:pink;">
<input type = "submit" name = "submit" value = "Register"/>
</form>
<?php
if (isset($_POST['submit']))
{
$FirstName=$_POST['FirstName'];
$Surname=$_POST['Surname'];
$result = "INSERT INTO users (FirstName,Surname) VALUES ('$FirstName','$Surname')";
mysqli_query($conn,$result);
}
?>
</div>
</div>
</div>
</body>
</html>
--connect.php - это код, который находится в connect.php
<?php
$user = 'root';
$pass ='';
$host = 'localhost';
$db = 'webassignment';
$conn = new mysqli($host, $user, $pass, $db);
if ($conn -> connect_error) {
die("Connection failed: " . $conn->connect_error);
}
?>
Вы включали connect.php? Вы открыты для инъекций SQL. Добавьте, пожалуйста, что такое the "mysqli" error.






Сначала запустите только файл connect.php, чтобы проверить, можно ли успешно установить соединение.
if ($conn -> connect_error) {
die("Connection failed: " . $conn->connect_error);
}
else
echo 'Success';
В order.php я не могу найти нигде, что вы назвали файлом connect.php. Так что переменная $conn здесь ни к чему.
Вызовите его с помощью функции include или require_once.
отредактируйте код в connect.php, чтобы он был таким
$conn = mysqli_connect($host, $user, $pass, $db);
if (mysql_connect_errno()){
echo "can't connect" . mysqli_connect_error();
}
и в order.php поместите этот код под <?php
require_once 'connect.php';
Я нашел проблему в order.php, код
<?php
$conn = new mysqli("localhost","root",'','webassignment',3306);
if (!$conn)
{
die('Could not connect: ' . mysql_error());
}
if (isset($_POST['submit']))
{
$FirstName=$_POST['FirstName'];
$Surname=$_POST['Surname'];
$HouseName=$_POST['HouseName'];
$StreetName=$_POST['StreetName'];
$Locality=$_POST['Locality'];
$MobileNumber=$_POST['MobileNumber'];
$Email=$_POST['Email'];
}
$result = "INSERT INTO users (FirstName,Surname,HouseName,StreetName,Locality,MobileNumber,Email) VALUES ('$FirstName','$Surname', '$HouseName','$StreetName','$Locality','$MobileNumber','$Email')";
if ($conn->query($result))
{
//echo "worked";
}else{
//echo "Error: " .$result ."<br>". $conn->error;
}
?>
Не могли бы вы также сказать, в чем ошибка?