Сообщение от kiberchainik
|
вот что ...
function selectFiltri() {
$this->Connect();
$select = mysql_query("select seo_name from filtri");
$arraySel = mysql_fetch_array($select);
$num = mysql_num_rows($select);
if ($num == "0") {
echo"Фильтров еще нет";
} else {
do {
echo "<option value='".$arraySel['seo_name']."'>".$arraySel['seo_name']."</option>";
} while ($arraySel = mysql_fetch_array($select));
}
}
это обработчик
|
Это не обработчик, это нет слов...
Фильтр по английски - filter, а не filtri, ну отвыкайте вы от этого жаргона, полусмеси непонятно чего с чем.
Функция mysql_fetch_array() без указания вторым аргументом типа возвращаемых данных, возвращает два идентичных набора, один индексный, второй ассоциативный. А вам это нужно? Зачем напрягать SQL пустыми задачами? Изучать, или эту использовать как необходимо, или именно ту, что возвращает необходимое (есть кроме нее).
if ($num == "0")... вообще оригинально. И прежде чем проверять количество полученных рядов, нужно проверить удачно ли вообще завершился запрос, если ошибки SQL у вас не обрабатываются глобально.
do ... while вообще не к месту. И где вы это только выкапываете, уже на стольких форумах эту пакость вижу, но до сих пор не знаю где вы ее черпаете.
Коли html, значит изменить список выгоднее так:
$("#listFilter").html('<option value="" style="color:gray">Seleziona...</option>'+response)
PS. Изменил value="0", на value="", проверять не пустое ли проще будет, а такая проверка желательна.