[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: цикл do while, ошибка вывода
Bogdan808
Коллеги помогите, вроде элементарная задача вывести данные из БД с помощью цикла do while. Вот собственно код.

$myrow_st = mysql_query("SELECT * FROM test_student",$db);
$student_array = mysql_fetch_array($myrow_st);
do{
echo $student_array['name'];
}
while(mysql_fetch_array($myrow_st));


Но вместо того чтобы выводить мне имеющиеся имена из моего БД по порядку, например:
1-е имя
2-е имя
и т.д.

Выводит только первое... и выводит столько раз сколько у нас имеется записей в БД!



Спустя 22 минуты, 47 секунд (6.10.2010 - 18:55) ASerputko написал(а):

// Получаем данные из базы данных
$myrow_st = mysql_query("SELECT * FROM test_student",$db);
// Выводим данные в цикле
while($student_array = mysql_fetch_array($myrow_st))
{
echo $student_array['name'];
}

Спустя 9 минут, 11 секунд (6.10.2010 - 19:04) Bogdan808 написал(а):
хм... такой метод вообще не подходит, у меня ничего не отображается((
млин! ну главное неделю назад все нормально было! а что ща произошло?
mad.gif

Спустя 10 минут, 17 секунд (6.10.2010 - 19:14) ASerputko написал(а):

$myrow_st = mysql_query("SELECT * FROM test_student",$db);
do
{
echo $student_array['name'];
}
while($student_array = mysql_fetch_array($myrow_st));

Спустя 12 минут, 29 секунд (6.10.2010 - 19:27) Bogdan808 написал(а):
Пасибо, а то я думал уже что пора вешаться!!
твой вариант работает но вот логики php я тут понять не могу
по идее мы сначала делаем так


$myrow_st = mysql_query("SELECT * FROM test_student",$db);//Выдераем "матрицу" из БД
$student_array = mysql_fetch_array($myrow_st);//Разбиваем матрицу на массив
do{
echo $student_array['name'];
}
while(mysql_fetch_array($myrow_st));//ну собственно проверка наличия заниси

а так как ты предложил первый раз вижу, но все равно спасибо.
+ твой!

Спустя 11 минут, 26 секунд (6.10.2010 - 19:38) inpost написал(а):
Bogdan808
Когда смотришь Попова, то все остальное "Новый свет" =)

while(mysql_fetch_array($myrow_st)); 

Ну ты перещёлкнул на новый массив тут. Но полученные данные надо присвоить! Поэтому пишется так:
while($student_array = mysql_fetch_array($myrow_st));


А вот теперь как правильно должно быть. Лень проверять Серпутку, от себя напишу:

$myrow_st = mysql_query("SELECT * FROM `test_student`",$db);
while($student_array = mysql_fetch_assoc($myrow_st))
{
echo $student_array['name'];
}

Спустя 58 секунд (6.10.2010 - 19:39) ASerputko написал(а):
Пока есть данные в
$student_array = mysql_fetch_array($myrow_st)

считывать строку
echo $student_array['name'];


И так по кругу

// Выводим данные в цикле
while($student_array = mysql_fetch_array($myrow_st))
{
echo $student_array['name'];
}

Спустя 8 минут, 40 секунд (6.10.2010 - 19:48) inpost написал(а):
ASerputko
1. Не array, а assoc в данном случае.
2. Выборку из БД лучше выделять апострофами (таблицу, данные, ячейки), так как именно в таком случае никогда не попадёшь в проблемы совместительства имён.

Спустя 7 минут, 37 секунд (6.10.2010 - 19:55) Bogdan808 написал(а):
у меня два вопроса, кто такой Попов?
и как прожить чтоб не работать? )))

Спустя 6 минут, 1 секунда (6.10.2010 - 20:01) inpost написал(а):
Bogdan808
1. Попов тот, кто научил хаотичную массу зависимых людей использовать do-while, вместо обычного while, а так же array, вместо assoc.
2. Если жить по Китайской психологии, то тебе надо умереть, и переродиться в новом теле какого-нибудь сыночка алигарха. Есть верить индийской религии - надо много делать добрых дел, и тогда ты переродишься, но чем лучше ты был, тем прикольнее тебе будет в новой жизни. Можешь по-еврейски: укради и обмани других. Можешь по русски - в тюрьму!

Спустя 5 минут, 45 секунд (6.10.2010 - 20:07) Bogdan808 написал(а):
ну и шиш с ним с этим Поповым, работать все равное придется! ыыыы! mad.gif
p.s. Кстати спасибо что напомнил про assoc... память то как решето, 1кг влетает 2 вылетает!

Спустя 3 минуты, 43 секунды (6.10.2010 - 20:11) arvitaly написал(а):
Цитата
у меня два вопроса, кто такой Попов?
и как прожить чтоб не работать? )))


1. Тот, кто решил указать людям путь чтобы прожить и не работать, но естественно это утопия smile.gif
2. Легко: рождаешься, вырастаешь (пока родители кормят) и умираешь.

Спустя 2 часа, 24 минуты, 13 секунд (6.10.2010 - 22:35) ASerputko написал(а):
Цитата (inpost @ 6.10.2010 - 18:48)
ASerputko
1. Не array, а assoc в данном случае.
2. Выборку из БД лучше выделять апострофами (таблицу, данные, ячейки), так как именно в таком случае никогда не попадёшь в проблемы совместительства имён.

inpost C тобой совершенного согласен, я просто разберал на конкретный пример Bogdan808

Спустя 2 минуты, 55 секунд (6.10.2010 - 22:38) ASerputko написал(а):
Цитата (Bogdan808 @ 6.10.2010 - 18:55)
у меня два вопроса, кто такой Попов?
и как прожить чтоб не работать? )))

Да уж примеры Попова пронзили инет очень сильно...
Сам в свое время попался laugh.gif изучал его уроки

Спустя 22 часа, 32 минуты, 58 секунд (7.10.2010 - 21:11) Bogdan808 написал(а):
Хм.... ради интереса посмотрел урок Попова, скачал пиратскую версию, у меня нервы не выдержали.....
14 минут он объяснял что такое if и else, за это же время я 5 страниц справочника прочел и узнал о двух дюжинах новых функций в php5... blink.gif

Спустя 24 минуты, 8 секунд (7.10.2010 - 21:35) inpost написал(а):
Bogdan808
Твой справочник, по которому ты учился, 100% писали по его урокам =)

Спустя 18 часов, 9 минут, 44 секунды (8.10.2010 - 15:45) Bogdan808 написал(а):
inpost
ха ха !


_____________
Да я нуп в php! и что? зато я в новых тапках и шубе.
Быстрый ответ:

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