Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

<select> html and php

477
01 марта 2007 года
Robinnovich
182 / / 02.12.2006
Здравствуйте уважаемые вот не могу понять что не так. Есть код:

Код:
$start="news";
echo "<select name='modules' style='width:200px'>";
                     $handle = opendir("modules");
                     while ($file = readdir($handle)) {
                 if (!preg_match("/\./", $file)) {
                 if ($file == $start) {
                  echo "<option value=\"$file\" selected>".$file."</option>";
                 } else {
                  echo "<option value=\"$file\">".$file."</option>";
                 }
                }
                }
    closedir($handle);
echo "</select>";


вот результатом выполнения должен быть список всех каталогов папки modules и активная та которая совпала с переменой $start, но не так то было активный тот каталог который первый заносился в <select>

подскажите что не так??
239
01 марта 2007 года
Dolonet
1.7K / / 20.05.2000
Смотрите две ссылки:
Select Tag - http://www.w3schools.com/tags/tag_select.asp
Option Tag - http://www.w3schools.com/tags/tag_option.asp

Возможно, имеет смысл написать selected="selected".
Да, и посмотрите в исходник результата. Есть ли там хоть один "selected"?
18K
02 марта 2007 года
Karpenko
11 / / 08.07.2006
Цитата: Robinnovich
Здравствуйте уважаемые вот не могу понять что не так. Есть код:

Код:
$start="news";
echo "<select name='modules' style='width:200px'>";
                     $handle = opendir("modules");
                     while ($file = readdir($handle)) {
                 if (!preg_match("/\./", $file)) {
                 if ($file == $start) {
                  echo "<option value=\"$file\" selected>".$file."</option>";
                 } else {
                  echo "<option value=\"$file\">".$file."</option>";
                 }
                }
                }
    closedir($handle);
echo "</select>";


вот результатом выполнения должен быть список всех каталогов папки modules и активная та которая совпала с переменой $start, но не так то было активный тот каталог который первый заносился в <select>

подскажите что не так??



Ну, во-первых, неправильно производится чтение содержимого каталога:

 
Код:
<?php
....
while(false!==($file=readdir($dir))){
...
}
...
?>


Ну, а для решения данной проблемы, необходимо ввести в начало списка пустой контейнер <option></option>
Во так правильно:
Код:
<?php
$start="news";
echo "<select name='modules' style='width:200px'>";
echo "<option></option>";
                     $handle = opendir("modules");
                     while (false!==($file=readdir($handle))) {
                 if (!preg_match("/\./", $file)) {
                 if ($file == $start) {
                  echo "<option value=\"$file\" selected>".$file."</option>";
                 } else {
                  echo "<option value=\"$file\">".$file."</option>";
                 }
                }
                }
    closedir($handle);
echo "</select>";
?>
92
02 марта 2007 года
Тень Пса
2.2K / / 19.10.2006
чесслово не уверен на 100% что пустой опшн там нужен ))))
18K
02 марта 2007 года
Karpenko
11 / / 08.07.2006
Ну не знаю, может причина и не в нём, но факт в том, что без него не работает :)
239
03 марта 2007 года
Dolonet
1.7K / / 20.05.2000
Повторюсь, смотрите примеры на w3schools.com и спецификацию w3c
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог