@yagyar001

Ошибка mysqli_fetch_assoc, где?

Вопрос решен! Перепутал поля в запросе к базе категории. Вместо id, нужно было category_id.
Update:
Если убрать в 12 строке or die (mysqli_error($link, $query)), то ошибка вылазит уже: Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in C:\OSPanel\domains\joke\admin\main.php on line 13

Всем привет. Ошибка при запросе к базе данных. Тренирую php. Есть две базы. В одной хранятся анекдоты, в другой категории анекдотов. Где анекдоты хранятся, есть поле, где храню id категории. Задача, в админке вывести таблицу всех анекдотов, с полем check = 0. Должно получиться так, только вместо id категории, должно быть название категории:
5c8729b98204d934676834.png
Связывать таблицы я еще не умею. В общем помогите разобраться. Ошибка вылазит: Warning: mysqli_error() expects exactly 1 parameter, 2 given in C:\OSPanel\domains\joke\admin\main.php on line 12
5c8728d53b217031526088.png5c8728e896648437625582.png5c872943ecab1950248982.png
<?php 
	include "../connectdb.php";
	session_start();
	if ($_SESSION['auth']) {
		$query = "SELECT * FROM jokes WHERE `check` = '0'";
		$result = mysqli_query($link, $query);
		for ($data = []; $row = mysqli_fetch_assoc($result); $data[] = $row);
		$content = "<table style = \"border: 1px solid black;\">";
		foreach ($data as $elem) {
			$id_cat = (int)$elem['category_id'];
			$query = "SELECT * FROM categories WHERE id = $id_cat";
			$result = mysqli_query($link, $query) or die (mysqli_error($link, $query));
			$category = mysqli_fetch_assoc($result);
			var_dump($id_cat);
			$content .= "<p>Ждут модерации</p>";
			$content .= "<tr style = \"border: 1px solid black;\">";
			$content .= "<th style = \"border: 1px solid black;\">id</th>";
			$content .= "<th style = \"border: 1px solid black;\">Заголовок</th>";
			$content .= "<th style = \"border: 1px solid black;\">Текст</th>";
			$content .= "<th style = \"border: 1px solid black;\">Категория</th>";
			$content .= "<th style = \"border: 1px solid black;\">
							Действие

						</th>";

			$content .= "<tr style = \"border: 1px solid black;\">";
			$content .= "<tr>";
			$content .= "<th style = \"border: 1px solid black;\">$elem[id]</th>";
			$content .= "<th style = \"border: 1px solid black;\">$elem[header]</th>";
			$content .= "<th style = \"border: 1px solid black;\">$elem[text]</th>";
			$content .= "<th style = \"border: 1px solid black;\">$elem[category_id]</th>";
			$content .= "<th style = \"border: 1px solid black;\">
							<form action=\"\" method=\"POST\">
								<input type=\"submit\" name = \"yes\" value = \"Опубликовать\">
							</form>
							<form action=\"\" method=\"POST\">
								<input type=\"submit\" name = \"no\" value = \"Удалить\">
							</form>

						</th>";
			$content .= "</tr>";
			$content .= "</table>";
		}
		echo $content;
	} 
?>
  • Вопрос задан
  • 387 просмотров
Решения вопроса 1
@yagyar001 Автор вопроса
В запросе к базе categories, вместо id, нужно category_id
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы