@Hellows

Почему не получаю информацию?

Добрый вечер всем.
Есть index.php, на котором выводится полностью информация об отеле.
<?php foreach ($hotel as $id => $hotel): ?>
// перечисление полей вывода
<a href="details?id=<?=$hotel['id']?>"><?=$hotel['name']?></a>
<?php endforeach; ?>
//Вывожу через запрос:
$query = 'SELECT * FROM hotel';
 $stmt = $pdo->prepare($query);
 $stmt->execute();
 $hotel= $stmt->fetchAll();

Как вы заметили, есть ссылка на документ details.php(убрал расширение через htaccess)., на котором должна отображаться полная информация об отеле(адрес, описание и т.д). НО!! Я создал страничку, написал запрос следующего вида:
$id = $_GET['id'];
  $stmt = $pdo->prepare('SELECT * FROM hotel WHERE id = :id');
  $details = $stmt->execute(array(':id' => $_GET['id']));

В итоге, на странице ничего не отображается. Писал для проверки
Проверка - <?=$details['id']?>
Ничего не выводит. В адресной строке details?id=1 и т.д.
Подскажите, что я делаю не так? Недавно перешел на PDO
  • Вопрос задан
  • 185 просмотров
Решения вопроса 1
Denormalization
@Denormalization
<?php foreach ($hotel as $id => $hotel): ?>

Переменная $hotel переопределяется. Дайте ей другое имя, хотя бы:
<?php foreach ($hotels as $id => $hotel): ?>

Так же после:
$details = $stmt->execute(array(':id' => $_GET['id']));

Нужно делать fetch/fetchAll и т.д. Так как данные еще не полученны.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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