Я пытаюсь получить строки из базы данных, используя подготовленные отчеты MySQl и получить результат. Однако это не работает.
Пожалуйста, кто-нибудь может увидеть, где я ошибаюсь? Я пробовал решения часами, но я не могу заставить его работать. Страница просто не загружается, как если запрос завершился неудачно.
$tag = trim($_GET['tag']); $stmt = $mysqli->prepare('SELECT posts.* FROM tags JOIN posts ON posts.id = tags.post_id WHERE tag = ?'); $stmt->bind_param('s', $tag); $stmt->execute(); $stmt->store_result(); $result = $stmt->get_result(); while ($row = $result->fetch_assoc()) { echo $row['tag']; } $stmt->free_result(); $stmt->close();
Попробуй это:
$stmt = $mysqli->prepare('SELECT posts.id FROM tags JOIN posts ON posts.id = tags.post_id WHERE tag = ?'); ... $stmt->bind_result($id); while ($stmt->fetch()) { // var_dump entire row to ensure the key you expect is avail var_dump($id); }
Upate
Если вы хотите сделать выбор *, то вам нужно указать КАЖДЫЙ столб в отдельности, проверьте это сообщение (не принятый ответ, но самый высокий результат). В противном случае я настоятельно рекомендую вам проверить PDO , поскольку это упрощает эти основные операции чтения.