Подскажите в чем проблема. Весь этот скрипт работает, но вывод происходит со второй строки, а не с первой? То есть в базе всего 4 записи, а выводится только с 2 по 4ю.
Таблица в базе такая:
id stars country city___________________________
1 __ 2 __ usa __ city4
2 __ 3 __ ukraine __ city3
3 __ 5 __ russia __ city2
4 __ 2 __ austria __ city1
Очищал всю таблицу, заного вводил, всеравно ничего. То есть как видно с таблицы usa не выводится, причем, если добавить поле выше usa, то не будет уже оно выводится.
Спустя 8 минут, 38 секунд (13.08.2009 - 21:06) sergeiss написал(а):
Выкинь эту строчку, находящуюся перед циклом:
Цитата (SunSet @ 13.08.2009 - 21:58) |
$myrow5 = mysql_fetch_array($result5); |
Спустя 4 минуты, 29 секунд (13.08.2009 - 21:11) SunSet написал(а):
sergeissТаки прав

А почему она отсекает первую строку?
Спустя 11 минут, 18 секунд (13.08.2009 - 21:22) Gradus написал(а):
Цитата (SunSet @ 13.08.2009 - 18:11) |
sergeiss Таки прав А почему она отсекает первую строку? |
Она не отсекает,а просто берёт.Но ты её никуда не выводиш,а цикл while продолжает дальше вытягивать строки из базы.
Спустя 27 минут, 26 секунд (13.08.2009 - 21:49) sergeiss написал(а):
Цитата (SunSet @ 13.08.2009 - 22:11) |
А почему она отсекает первую строку? |
Потому что mysql_fetch_array считывает строку из выборки, возвращает ее в виде массива и указатель переходит на следующую строку.
Спустя 15 минут, 31 секунда (13.08.2009 - 22:05) SunSet написал(а):
sergeiss
Подскажи еще одну вещь... у меня в цикле вывод такой строки "'usa':{'ny':'ny','ny':'ny'},", значения в нем меняются в зависимости что вытягивается из баы. Но цикл вывода так устроен что добавляет запятую в конце строки, так как много строчек для вывода. А как сделать чтобы последняя строчка была без запятой уже, а то Аваскрипт при лишней запятой отказывается работать.
syncList1.dataList = {
PHP |
<?php $result7 = mysql_query("SELECT stars,city FROM dan",$db); while($myrow7 = mysql_fetch_array($result7)) { echo "'".$myrow7['city']."':{'".$myrow7['stars']."':'".$myrow7['stars']."','".$myrow7['stars']."':'".$myrow7['stars']."'},".PHP_EOL; }
|
};
Спустя 3 минуты, 13 секунд (13.08.2009 - 22:08) sergeiss написал(а):
Да просто, вобщем-то

PHP |
// перед циклом $loop=0; while( ..... ) { // в самом начале цикла if( $loop != 0 ) echo ','; $loop++; // и можешь использовать эту переменную еще для каких-то целей. // а далее идет твой вывод echo .... } |
Спустя 6 минут, 4 секунды (13.08.2009 - 22:14) SunSet написал(а):
syncList1.dataList = {
PHP |
<?php $result7 = mysql_query("SELECT stars,city FROM dan",$db); $loop=0; while($myrow7 = mysql_fetch_array($result7)) { if( $loop != 0 ) echo ','; echo "'".$myrow7['city']."':{'".$myrow7['stars']."':'".$myrow7['stars']."','".$myrow7['stars']."':'".$myrow7['stars']."'},".PHP_EOL; }
|
};
По-моему, чтото я путаю..

Из цикла убирать запятую?
Спустя 12 минут, 5 секунд (13.08.2009 - 22:26) sergeiss написал(а):
Я там дописал еще $loop++, буквально через 30 секунд после отправки сообщения

Потому что просто забыл сразу это написать, хотя, естественно, подразумевал.
_____________
... и помните! Каким бы ни был PHP, главное - чтобы он был защищенным! :) (PHP с Анфисой Чеховой)