#php #html #mysql #sql
#php #HTML #mysql #sql
Вопрос:
Итак, я пытаюсь получить обновленный список лайков, когда пользователь обновляет страницу. Проблема в том, что я получаю
Обратите внимание: неопределенная переменная: post в /Users/matt/Desktop/Likers/home/index.php в строке 54
Строка 54 является var_dump($post['id']);
. В итоге я получаю NULL
то, что должно происходить. Теперь вот как я выполняю запрос
$qry = $con->prepare("SELECT * FROM posts WHERE post_user IN (SELECT follow_to FROM followers WHERE follow_from = :user)");
$qry->bindValue(':user', $username, PDO::PARAM_STR);
$qry->execute();
$posts = array();
while($row = $qry->fetch(PDO::FETCH_ASSOC)){
$posts[] = array(
'post_user' => $row['post_user'],
'id' => $row['id'],
'post_date' => $row['post_date'],
'post_likes' => $row['post_likes'],
'post_content' => $row['post_content']
);
}
var_dump($post['id']);
Так что я в принципе не получаю id
. Хотя в моей базе данных у меня есть id
Комментарии:
1.
$posts[0]['id'] or $posts[1]['id'] or $posts[2]['id'].... so on
2. @FerozAkbar Вы должны опубликовать это как ответ.
Ответ №1:
Вы определяете массив $posts[]
, а затем выполняете сброс $post['id']
. Во-первых, $post
должно быть $posts
, а во-вторых, вы добавляете в массив, чтобы у него был индекс $posts[0]['id']
.
Ответ №2:
Вы получите массив записей типа
$posts = array('0' => array('id' => 1), '1' => array('id' => 2));
Поэтому вам нужно найти значение id, используя его значение индекса или используя цикл foreach.
foreach($posts as $post){
var_dump($post['id']);
}