[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Соединеный mysql запрос
jalvar
Вот сам запрос
SELECT COMMENT . * , users.login, users.name, users.surname, users.avatar
FROM COMMENT , users
WHERE comment.id_user = users.id
AND comment.id_mechta =1
LIMIT 0 , 30

Вот результаты phpmyadmin'a




Спустя 1 минута, 49 секунд (1.06.2011 - 16:02) sharki написал(а):
Молодец biggrin.gif

Спустя 8 секунд (1.06.2011 - 16:02) Michael написал(а):
Каков вопрос?

Спустя 3 минуты, 20 секунд (1.06.2011 - 16:06) jalvar написал(а):
А забыл вопрос.
Он не выводит данные из переменных. Пробовал так echo $row['name'] и так $row['users.name'] пусто. Ничего нету.

Спустя 2 минуты, 20 секунд (1.06.2011 - 16:08) sharki написал(а):
jalvar
а полностью код, начиная с .... mysql_query и до того момента когда ты начинаешь что-то выводить

Спустя 1 минута, 24 секунды (1.06.2011 - 16:09) jalvar написал(а):
$id=1;
// Текущая страница
$cur_comment = isset($_GET['comment']) ? (int) $_GET['comment'] : 0;

// Текущая страница не может быть меньше единицы
if ( $cur_comment < 1 ) $cur_comment = 1;

// Количество записей на странице
$items_per_comment = 10;

// Запрос на выборку
$sql = '
SELECT comment.*, users.login, users.name, users.surname, users.avatar FROM comment, users WHERE comment.id_user = users.id AND comment.id_mechta='
.$GLOBALS["id_mechta"].' LIMIT
'
. (($cur_comment - 1) * $items_per_comment) .', '. ((int) $items_per_comment) .'';

// Исполнение запроса
$res = mysql_query($sql);
if ( !$res ) die('Bad SQL-query: <br /><pre>'. $sql .'</pre><p>'. mysql_error() .'</p>');

// Количество записей, которые вернул запрос
$items_count = mysql_affected_rows();

// Общее количество найденых записей, без учёта лимита
list($total) = mysql_fetch_row(mysql_query('SELECT FOUND_ROWS()'));

// Количество страниц, которое необходимо для просмотра списка
$comments_count = ceil($total / $items_per_comment);

// Если страниц больше одной, то необходимо вывести их
if ( $comments_count > 1 )
{
echo '<p>Страницы: ';

// Поскольку количество страниц заранее известно, то используем for
for ( $i = 1; $i <= $comments_count; ++$i )
echo '<a href="?page=dream&do=view&id='.$id.'&comment=', $i, '">', $i, '</a> ';

echo '</p>';
}

// Если были найдены записи, то выводим список
if ( $items_count )
{

// Вывод найденных записей
while ( $row = mysql_fetch_assoc($res) )
echo '<table width="100%" border="0">
<tr>
<td width="26%" align="center" valign="top"><img src="avatar/'
.$row['avatar'].'" /></td>
<td width="74%" valign="top">'
;
if($row['name']=='' && $row['surname']=='')
{
echo $row['login'];
}
else
{
echo $row['name'].' '.$row['surname'];
}
echo'</td>
</tr>
<tr>
<td valign="top">'
.$row['date'].'</td>
<td valign="top">'
.$row['text'].'</td>
</tr>
</table>'
;

}
else
{
// Список пуст, выводить нечего
echo '<p>К сожалению, нет комментариев!</p>';
}

Спустя 1 минута, 31 секунда (1.06.2011 - 16:11) Michael написал(а):
А ты сделай print_r($row) и увидишь, где что спрятано

Спустя 2 минуты, 11 секунд (1.06.2011 - 16:13) Michael написал(а):
// Количество записей, которые вернул запрос
$items_count = mysql_affected_rows();

вот это неверно. mysql_num_rows надо. Affected это при изменении данных в БД.

Цитата (jalvar)
Выбивает ошибку

точку с запятой поставь

Спустя 1 минута, 3 секунды (1.06.2011 - 16:14) jalvar написал(а):
Спасибо!


_____________
jallvar.oxnull.net - мой блог.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.