mysqli — PHP-запрос не будет вставлен в базу данных

Приведенный ниже запрос не будет вставлен в базу данных. Я пробовал этот запрос в своей базе данных, поэтому я вполне уверен, что запрос работает. Я также добавил dbcon.php ниже.

<?php
require '../api/dbcon.php';

$stmt=$conn->prepare("INSERT INTO joborder (AirCondition,
CarpentryMasonry,
ElectricalWorks,
Plumbing,
Welding,
Campus,
priorityId,
RequestorName,
UserJobDescription,
SerialCode
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)" );

$stmt->bind_param('ssssssssss',
$airConditioning,
$masonryCarpentry,
$electrical,
$plumbing,
$welding,
$campus,
$priority,
$requester,
$userJobDescription,
$serialCode);

$airConditioning = "check";
$masonryCarpentry = "check";
$electrical = "check";
$plumbing = "check";
$welding = "check";
$campus =  'NA';
$priority =  '1';
$requester = "m";
$userJobDescription ="test";
//create serial code
$serialCode= "na12321";

?>

dbcon.php

      <?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$dbtable = "table";
$conn = new mysqli($dbhost, $dbuser, $dbpass, $dbtable);

if(!$conn ){
die('Could not connect: ' . mysqli_error());
}
?>

0

Решение

вы используете плохой режим сообщения об ошибках, и поэтому вам нужно тщательно проверять ошибки везде, но это не так.

в not-dbcon.php в строке 4 вы не проверяете, что $ conn-> prepare успешно выполнено, сделайте это, он возвращает bool (false), если произошла ошибка. в строке 16 вы не проверяете, что $ stmt-> bind_param успешно, сделайте это, он возвращает bool (false), если произошла ошибка. или, что еще лучше, не делайте этого, просто преобразуйте отчет о возвращаемом значении-ошибке в отчет-исключение-ошибку, запустив $conn->report_mode = MYSQLI_REPORT_ALL; сразу после создания объекта.

… и что наиболее важно, кажется, вы забыли запустить $ stmt-> execute (), которая фактически выполняет запрос, что, очевидно, объясняет, почему вы ничего не вставляете.

0

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

<?php

$servername = "localhost";
$username = "root";
$password = "123456";
$database = "inventory";
// Create connection
$conn = new mysqli($servername, $username, $password, $database);

$stat = $conn->prepare("INSERT INTO salary (name, salary, job) values (?, ?, ?)");

$name = 'test';
$salary = '21123';
$job = 'demo';

$stat->bind_param($name,$salary, $job );

// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}

// prepare and bind
$stmt = $conn->prepare("INSERT INTO salary (name, salary, job) VALUES (?, ?, ?)");
$stmt->bind_param("sss", $firstname, $lastname, $email);

// set parameters and execute
$firstname = "Johnqqq";
$lastname = "123123";
$email = "sdadsad";
$stmt->execute();

echo "New records created successfully";

$stmt->close();
$conn->close();

?>
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector