#php #mysqli
#php #mysqli
Вопрос:
Я пытаюсь подключиться к базе данных с помощью php, но я получаю ошибку сервера 500.
<?php
session_start();
$db = new mysqli("localhost", "username", "password", "db_name") or
die("ERROR!!!");
$sql = "SELECT forum_id, forum_name FROM forum_tabl";
if($query = $db->prepare(sql)){
$query = bind_result($f_id, $f_name);
$query->execute();
}else{
echo $db;
}
?>
Комментарии:
1.
mysqli_error
могу вам помочь?!2. Что это?
$query = bind_result($f_id, $f_name);
3. вы должны сначала выполнить запрос, прежде чем использовать bind_result
Ответ №1:
Вы должны сначала выполнить запрос, прежде чем использовать bind_result()
<?php
session_start();
$db = new mysqli("localhost", "username", "password", "db_name") or
die("ERROR!!!");
$sql = "SELECT forum_id, forum_name FROM forum_tabl";
if($query = $db->prepare(sql)){
$query->execute();
$query = bind_result($f_id, $f_name);
}else{
echo $db;
}
?>
Ответ №2:
Несколько вещей, которые вы должны проверить / попробовать-
1) Ваш сервер запущен (apache или любой другой сервер, который вы используете)
2) Удаленный mysql предварительно запрашивает IP-адрес устройства, которое пытается подключиться к базе данных
3) Добавьте предложение «WHERE» в $sql = "SELECT forum_id, forum_name FROM forum_tabl";
например : $sql = "SELECT forum_id, forum_name FROM forum_tabl WHERE something=?";
4) Проверьте свои переменные — например, в этой строке —
$sql = "SELECT forum_id, forum_name FROM forum_tabl";
forum_tabl
может быть forum_table
Помимо этого, вот немного более чистый код для ваших целей. Надеюсь, это сработает.
Это config.php файл, который вы можете включить в другие свои php-страницы, которые вам нужны для использования базы данных:
<?php
define('DB_SERVER', 'localhost');
define('DB_USERNAME', 'your_username');
define('DB_PASSWORD', 'your_password');
define('DB_DATABASE', 'your_db');
$db = mysqli_connect(DB_SERVER,DB_USERNAME,DB_PASSWORD,DB_DATABASE);
?>
В конце концов, все остальные .php
:
<?php
include("config.php");
$stmt = $db->prepare("SELECT forum_id, forum_name FROM forum_tabl WHERE something=?");
$stmt->bind_param("s", $something);
$stmt->execute();
$result = $stmt->get_result();
if($result->num_rows === 0) exit('No rows');
while($row = $result->fetch_assoc())
{
$forum_id = row['forum_id'];
.......
}
?>
Надеюсь, это поможет.