Loading...
PHP/MySQL | Вывод юзеров с базы
Код:

$stmt=$pdo->query('SELECT COUNT(*) as count FROM users WHERE lu>= ' . $last . ' ');
$count=$stmt->fetch(PDO::FETCH_ASSOC);
$count=$count['count'];

$foo=1;
while ($foo<=$count) {
echo "<div class='tblock'>
<a href='user$online[id]'>$online[login]</a>, $online[lvl]<br>
</div>";
$foo++;
}

Он правильно считает юзеров онлайн, но выводит всегда первого подходящего под условие столько раз, сколько человек сейчас онлайн на сайте. Т.е. есть сейчас два чела онлайн, он выведет два раза одного и того же. Как выводить всех юзеров онлайн, а не 1 по несколько раз?
Gazro, а зачем Вы создаёте псевдоним для подсчёта строк и как подсчёт количества строк связан с выводом массива в цикле while?
________
посл. ред. 11.08.2017 в 20:56; всего 2 раз(а); by PhpStorm
Я хз как на пдо но думаю тут $ last заменить нужно)

<?php
$stmt=$pdo->query('SELECT COUNT(*) as count FROM users WHERE lu>= ' . $last . ' ');
$count=$stmt->fetch(PDO::FETCH_ASSOC);
while ($online = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo "<dv class='tblock'>
<a href='user$online[id]'>$online[login]</a>, $online[lvl]<br>
</div>";
}
?>

Так попробуй
________
посл. ред. 11.08.2017 в 20:53; всего 1 раз(а); by TheAlex
TaNi (11.08.2017 в 20:52)
Я хз как на пдо но думаю тут $ last заменить нужно)


Вы используете PDO без подготовки запросов и без привязки параметров.

<?php
$stmt = $pdo->query('SELECT * FROM users WHERE lu>= ' . $last . ' ');
$online = $stmt->fetchAll();

foreach ($online as $onl) {
echo $onl['login'];
}



и почему PDO::FETCH_ASSOC не указать при инициализации класса и потом не маяться с ним wtf
________
посл. ред. 11.08.2017 в 21:36; всего 3 раз(а); by shadrvlad
Т.е $last не значит последний?)) переменную в студию)
shadrvlad,

теперь представь лицо чувака, увидевшего конструкцию foreach($array as $value) первый раз в жизни *CRAZY*
________
посл. ред. 11.08.2017 в 21:01; всего 1 раз(а); by PhpStorm
PhpStorm, так нафига городить while если есть foreach для массивов специально
shadrvlad (11.08.2017 в 21:02)
PhpStorm, так нафига городить while если есть foreach для массивов специально


в пабликах везде while юзают ты его сбил с толку хотя может начнут читать мануалки хоть .45.
Онлайн: 2
Время:
Gen. 0.1371
(c) Bym.Guru 2010-2025