Забыли пароль?
Запросите новый здесь.

Автор темы: yury
ID темы: 958
Информация:
Тема содержит 10 сообщения, была просмотрена 3408 раз.  Имеются прикрепленные файлы.
Просмотр темы
PHP-Fusion Russia » Веб-разработка » PHP
 Распечатать тему
Вывести результаты теста/ Прошу помощи
yury
День добрый всем. Т.к видимо в связи с тем, что давно не програмил ничего, что-то эллементарный синтаксис вывода данных из двух таблиц забыл:(

Есть таблица

$inf_newtable[1] = DB_PREFIX."iq_test (
id mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
user varchar(100) NOT NULL DEFAULT '',
result text NOT NULL,
start_time int(10) unsigned NOT NULL DEFAULT '0',
finish_time int(10) unsigned NOT NULL DEFAULT '0',
last_time int(10) unsigned NOT NULL DEFAULT '0',
question text,
PRIMARY KEY (id)
) TYPE=MyISAM;";


как вывести данные из нее, чтобы при этом у юзера выводился не только ник, но из таблицы test_users брался ip юзера, чтобя я сразу мог видеть одинаковые ипы, и группировать вывод по одинаковым ипам&

в итоге имеем таблицу

результат по ответам / ник / ip / время прохождения

(группируем по ip)
 
yury
попробовал так, но чтото юзера и его ип не выводит:

opentable("Участники");
$i = 0;
$result = dbquery("SELECT t.*, u.user_ip FROM ". DB_PREFIX."iq_test t LEFT JOIN ".DB_USERS." u ON t.user=u.user_name GROUP BY user_ip LIMIT 0,100");

if (dbrows($result) != 0) {
echo '<table width="90%" border="0" cellpadding="0" cellspacing="1" align="center" class="tbl-border">
<tr>
<td width="1%" align="center" class="tbl2"><strong>Ответов</strong></td>
<td align="center" class="tbl2" width="1%"><strong>Ник</strong></td>
<td width="1%" align="center" class="tbl2"><strong>IP</strong></td>
<td width="1%" align="center" class="tbl2"><strong>Время прохождения</strong></td>
</tr>';



while ($data = dbarray($result)) {
$i++;
echo '<tr>
<td align="center">'.$data['result'].'</td>
<td align="center">'.$data['user_name'].'</td>
<td align="center">'.$data['user_ip'].'</td>
<td align="center">'.$data['last_time'].'</td>
</tr>';


}
echo '</table>';


} else {
echo "";
}
closetable();


и выводит не всех учакстников, а всего 1 результат, самый первый
 
PahaW
yury, может пригодится http://www.cyberforum.ru/mysql/thread430543.html
-----
Лайкай авууууу, авы себя не залайкают
 
Web
yury
PahaW? скажи плиз где я ошибку допустил?
 
Vova
Для user_name нужно использывать LIKE.

user_name LIKE '%%'

t.user=u.user_name замени на t.user=u.user_id
 
Web
yury
и правда вывелось)

а как преобразовать время формата 1349470727 в нормальное в минутах или секундах
 
Vova
showdate("longdate", "1349470727");
 
Web
PahaW
yury, для chrome есть простой плагин, и не надо кодить в php даже, вообще для лентяев
PahaW присоединено следующее:изображение:
1112.png

-----
Лайкай авууууу, авы себя не залайкают
 
Web
PahaW
Vova написал:

Для user_name нужно использывать LIKE.

user_name LIKE '%%'

t.user=u.user_name замени на t.user=u.user_id


хммм, я так понял сюда
user varchar(100) NOT NULL DEFAULT '',
имя пишется? а ты его сравниваешь с ip?


http://www.mysql.ru/docs/mysql-man-4.0-ru/reference.html#group-by-functions

Тут есть примеры группировки
http://www.mysql.ru/docs/mysql-man-4.0-ru/tutorial.html

Может тебе не группировка нужна, а сортировка? ORDER BY как раз отсортирует по одинаковым IP
-----
Лайкай авууууу, авы себя не залайкают
 
Web
PahaW
http://izra.ru/2009/02/06/sortirovka-dannyih-v-mysql/
-----
Лайкай авууууу, авы себя не залайкают
 
Web

Поделиться этой темой
Социальные закладки: Vkontakte Odnoklassniki Mail.ru Facebook Google Tweet This
URL:
BBcode:
HTML:

Перейти на форум:
Похожие темы
Топ 5 пользователей форума
Alex Alex (1,180)   Zaxap Zaxap (1,078)   Vova Vova (877)   Pisatel Pisatel (678)   util util (666)