Это сводило меня с ума в течение нескольких недель, я просто хочу, чтобы переменная $ _SESSION была включена в запрос.
Это работает на каждой другой странице, но эта, эта и эта конкретная страница просто НЕ БУДУТ РАБОТАТЬ.
$query = "SELECT
*
FROM listings
WHERE
id = :id
";
// Define our query parameter values
$query_params = array(
':id' => htmlentities($_SESSION['user']['id'], ENT_QUOTES, 'UTF-8')
);
Это то, с чем я по сути справился, и, насколько я знаю, он должен работать так же, как и на любой другой странице!
Я пробовал конкатонировать и отражать его, я пробовал только сеанс, я пробовал POST, но, похоже, он просто не впускает его.
Ранее на странице у меня есть
<?php echo htmlentities($_SESSION['user']['id'], ENT_QUOTES, 'UTF-8') ?>
В качестве теста, чтобы убедиться, что значение есть, и оно работает безупречно.
Я также попытался перечислить «SELECTS» специально и до сих пор ничего.
Вот ошибка, которую дает мне PHP: «Неверный номер параметра: параметры не были связаны»
Попробуйте это, если это работает,
при условии, что у вас есть $ db в качестве объекта соединения с БД
$query = "SELECT
*
FROM listings
WHERE
id = :id
";
$stmt = $db->prepare($query);
$stmt->bindValue(':id', htmlentities($_SESSION['user']['id'], ENT_QUOTES, 'UTF-8'));
попробуй это
$paramSession = htmlentities($_SESSION['user']['id'], ENT_QUOTES, 'UTF-8');
$query_params = array(YOUR_PARAMS)
print_r($query_params); //edit his post adding the output of this.