Выберите в mysqli в PHP переменную
Я написал PHP-скрипт с подключением к базе данных, который, похоже, работает правильно.
Проблема, с которой я сталкиваюсь, заключается в использовании оператора SELECT
для извлечения значений из моей базы данных и присвоения этих значений переменным PHP.
Если я копирую SQL в PHPMyAdmin, я получаю правильный результат, поэтому я доверяю самому запросу.
Я получу ошибку, если напишу:
echo $result;
Что я делаю не так?
Вот мой полный код:
<?php
$servername = "XXXXXX";
$username = "XXXXXX";
$password = "XXXXX";
$dbname = "XXXXXX";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$test_code = $_GET['code'];
$product_name = $_GET['product'];
// sql to create table
$sql = "CREATE TABLE IF NOT EXISTS code_ever (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
produkt VARCHAR(50) NOT NULL,
code VARCHAR(30) NOT NULL
)";
if ($conn->query($sql) === TRUE) {
} else {
}
// sql to create table
$sql = "CREATE TABLE IF NOT EXISTS code_scanned (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
produkt VARCHAR(50) NOT NULL,
code VARCHAR(30) NOT NULL
)";
if ($conn->query($sql) === TRUE) {
} else {
}
$query = "SELECT code FROM code_ever WHERE code = 'XKBKNABJK'";
$result = mysqli_query($conn, $query);
if($result)
{
echo $result;
}
else
{
echo("Sorry:".mysqli_error($conn));
}
$conn->close();
?>
2 ответа:
Вам нужно получить результаты.
$query = "SELECT code FROM code_ever WHERE code = 'XKBKNABJK'"; if ($result = mysqli_query($conn, $query)) { /* fetch associative array */ while ($row = mysqli_fetch_assoc($result)) { echo $row["code"]; } /* free result set */ mysqli_free_result($result); }
Http://php.net/manual/en/mysqli-result.fetch-assoc.php
Помимо получения результатов, вы должны изменить дизайн таблицы. Вы не должны иметь более одного значения на "ячейку таблицы". Например, у вас есть разделенные запятыми значения для размера/цвета и т. д. продукта. Вы должны иметь их в качестве отдельных атрибутов в таблице или, возможно, даже отдельной таблице.
Пример: