[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: цикл while..
nugle
3драствуйте форумчане, подскажите пожалуйста почему при написании вот такого кода


<?php
$res=mysql_query("select * from films order by date_dob DESC limit 5 ");
$res2=mysql_fetch_array($res);

while($res2=mysql_fetch_array($res)){
echo '<a href="films_ob.php?id='.$res2['id'].'">'.$res2['title'].'</a><br />
Название: '
.$res2['title'].'<br />
Год выпуска: '
.$res2['god'].'<br />
Продолжительность: '
.$res2['prod'].'<br />
Дата добавления: '
.$res2['date_dob'].'<br />
О фильме: '
.$res2['opisanie'].'<br /><br />



'
;
}
?>


не выводится первая 3апись?



Спустя 2 минуты, 46 секунд (29.09.2010 - 13:32) silius написал(а):

<?php
$res=mysql_query("select * from films order by date_dob DESC limit 5 ");
// $res2=mysql_fetch_array($res); <- вот первая запись

while($res2=mysql_fetch_array($res)){
echo '<a href="films_ob.php?id='.$res2['id'].'">'.$res2['title'].'</a><br />
Название: '
.$res2['title'].'<br />
Год выпуска: '
.$res2['god'].'<br />
Продолжительность: '
.$res2['prod'].'<br />
Дата добавления: '
.$res2['date_dob'].'<br />
О фильме: '
.$res2['opisanie'].'<br /><br />



'
;
}
?>

Спустя 1 минута, 28 секунд (29.09.2010 - 13:33) nugle написал(а):
А почему она не выводится?

Спустя 1 минута, 9 секунд (29.09.2010 - 13:34) Ice написал(а):

<?php
$res = mysql_query("select * from films order by date_dob DESC limit 5 ");

while($res2=mysql_fetch_assoc($res)){
echo '<a href="films_ob.php?id='.$res2['id'].'">'.$res2['title'].'</a><br />
Название: '
.$res2['title'].'<br />
Год выпуска: '
.$res2['god'].'<br />
Продолжительность: '
.$res2['prod'].'<br />
Дата добавления: '
.$res2['date_dob'].'<br />
О фильме: '
.$res2['opisanie'].'<br /><br />';
}
?>

Спустя 12 секунд (29.09.2010 - 13:34) silius написал(а):
потому что она стоит перед циклом while

Спустя 2 минуты, 8 секунд (29.09.2010 - 13:37) nugle написал(а):
О, спасибо обоим...

Спустя 1 минута, 1 секунда (29.09.2010 - 13:38) Ice написал(а):
мой вар будет работать в 2 раза быстрее=)

Спустя 7 минут, 35 секунд (29.09.2010 - 13:45) AlmazDelDiablo написал(а):
Добрый день, форумчане.
У меня тоже проблема с циклом while. Вернее, я не знаю, можно ли вообще делать то, что сделал я.
l2db_connent( $l2_acc_conf );
$res = mysql_query( "SELECT * FROM `characters` WHERE `account_name` = '$l2_login'" );
while( $l2_acc_chars = mysql_fetch_assoc( $res ) ) {
for( $i = 0; $i <= 7; $i++ ) {
$l2_acc_char{$i} = l2_acc_chars['char_name'];
}
}

echo $l2_acc_char2;


Выводит ошибку "Parse error: syntax error, unexpected '[' in l2_acc.php on line 47
47-я строка:
$l2_acc_char{$i} = l2_acc_chars['char_name'];

Спустя 5 минут, 28 секунд (29.09.2010 - 13:51) silius написал(а):
Замени фигурные скобки на квадратные

$l2_acc_char[$i] = $l2_acc_chars['char_name'];


и выводи так

print_r ( $l2_acc_char );

Спустя 1 минута, 46 секунд (29.09.2010 - 13:52) Ice написал(а):
а значок доллара где птирял?

Спустя 8 минут, 47 секунд (29.09.2010 - 14:01) Ice написал(а):
Цитата (inpost @ 29.09.2010 - 14:59)
А почему, интересно, в 2 раза быстрее?

Чё, налажал где-то, да? Ну памяти займет в два раза меньше значит, потому что используется mysql_fetch_assoc

Спустя 1 минута, 58 секунд (29.09.2010 - 14:03) AlmazDelDiablo написал(а):
Спасибо, Ice. Оказалось, именно в этом проблема.

silius, спасибо, навел меня на мысль о создании листа, вместо переменных ) Сделал вот так:

while( $l2_acc_chars = mysql_fetch_assoc( $res ) ) {
$l2_acc_char[] = $l2_acc_chars['char_name'];
}
print_r( $l2_acc_char );

И все стало именно так, как мне надо smile.gif
Быстрый ответ:

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