Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Выбор елемента в списке

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Dekker8
Отправлено: 23 Мая, 2009 - 22:04:13
Post Id



Частый гость


Покинул форум
Сообщений всего: 139
Дата рег-ции: Янв. 2009  


Помог: 0 раз(а)




Есть список:

echo "<select name=prinat_sotr id=prinat_sotr>";
echo "<option value=Яворский>Сидоров</option>";
echo "<option value=Иванов>Иванов</option>";
echo "<option value=Петров>Петров</option>";
echo "</select>";

как сделать чтобы при выводе его выводилось выбрано было значение скажем 'Иванов' или 'Петров' то есть поставить типа как по дефолту если можно так сказать Улыбка))
 
 Top
vitaliy_mad
Отправлено: 23 Мая, 2009 - 22:29:27
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. echo "<select name=prinat_sotr id=prinat_sotr>";
  3. echo "<option value=Яворский".(($_POST['prinat_sotr']=='Яворский')?" selected":"").">Сидоров</option>";
  4. echo "<option value=Иванов".(($_POST['prinat_sotr']=='Иванов')?" selected":"").">Иванов</option>";
  5. echo "<option value=Петров".(($_POST['prinat_sotr']=='Петров')?" selected":"").">Петров</option>";
  6. echo "</select>";
  7. ?>
  8.  

или $_GET вместо $_POST... смотря как данные отправляются

(Отредактировано автором: 23 Мая, 2009 - 22:30:31)

 
 Top
EuGen Администратор
Отправлено: 23 Мая, 2009 - 22:50:23
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Так то оно так, но лучше через массив и циклом выводить (у нас ведь может быть много элементов)


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
vitaliy_mad
Отправлено: 23 Мая, 2009 - 22:52:20
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




EuGen пишет:
Так то оно так, но лучше через массив и циклом выводить (у нас ведь может быть много элементов)

ага, массив однозначно... в любрм случае принцип тот же.... а сюдя по куску кода ему и нужен был принцип...
 
 Top
Dekker8
Отправлено: 24 Мая, 2009 - 08:26:55
Post Id



Частый гость


Покинул форум
Сообщений всего: 139
Дата рег-ции: Янв. 2009  


Помог: 0 раз(а)




У меня всего 3 елемента должно быть в списке(3 фамилии). А что нету ли каккого нить параметра типа default selected.

Вообще решил таким способом без массивов(но удобно токо када мало елементов в списке):

PHP:
скопировать код в буфер обмена
  1. if($prinat_v_remont_sotr == 'Яворский'){
  2. echo "<select name=prinat_sotr id=prinat_sotr>";
  3. echo "<option value=Яворский>Яворский</option>";
  4. echo "<option value=Иванов>Иванов</option>";
  5. echo "<option value=Петров>Петров</option>";
  6. echo "</select>";}
  7.  
  8. if($prinat_v_remont_sotr == 'Иванов'){
  9. echo "<select name=prinat_sotr id=prinat_sotr>";
  10. echo "<option value=Иванов>Иванов</option>";
  11. echo "<option value=Яворский>Яворский</option>";
  12. echo "<option value=Петров>Петров</option>";
  13. echo "</select>";}
  14.  
  15. if($prinat_v_remont_sotr == 'Петров'){
  16. echo "<select name=prinat_sotr id=prinat_sotr>";
  17. echo "<option value=Петров>Петров</option>";
  18. echo "<option value=Иванов>Иванов</option>";
  19. echo "<option value=Яворский>Яворский</option>";
  20. echo "</select>";}
  21.  
  22. echo "</label>";
  23. echo "статус:";
  24. echo "<label>";
  25.  

мне надо еще шоб по нажатии кнопки передавалось значение(value) в базу данных. так как я написал работает все норм но вроде немного громоздкой код Недовольство, огорчение


Отредактировано администратором: Champion, 24 Мая, 2009 - 08:29:45
[PHP][/PHP]
 
 Top
valenok Модератор
Отправлено: 24 Мая, 2009 - 11:40:43
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




Default selected это вот так:

echo "<select name=prinat_sotr id=prinat_sotr>";
echo "<option value=Яворский selected='selected'>Сидоров</option>";
echo "<option value=Иванов>Иванов</option>";
echo "<option value=Петров>Петров</option>";
echo "</select>";


-----
Truly yours, Sasha.
 
My status
 Top
Ch_chov
Отправлено: 24 Мая, 2009 - 11:41:52
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008  
Откуда: из города


Помог: 90 раз(а)




PHP:
скопировать код в буфер обмена
  1. $sel = <<< FLAG
  2. <select name="prinat_sotr" id="prinat_sotr">
  3. <option value="Яворский">Яворский</option>
  4. <option value="Иванов">Иванов</option>
  5. <option value="Петров">Петров</option>
  6. </select>
  7. FLAG;
  8.  
  9. echo str_replace('value="'.$prinat_v_remont_sotr.'"', 'value="'.$prinat_v_remont_sotr.'" selected="selected"', $sel);
 
 Top
Гость
Отправлено: 24 Мая, 2009 - 11:45:01
Post Id


УДАЛЁН










Dekker8 Вообще если список хоть с одним выбором хоть multiple просто нужно добавить слово selected - а так если не добавлено то как было уже верно сказано что первое в списке стоит то и покажется выделенным
 
 Top
Ch_chov
Отправлено: 24 Мая, 2009 - 11:52:29
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008  
Откуда: из города


Помог: 90 раз(а)




Цитата:
просто нужно добавить слово selected

В XHTML документах уже нельзя так делать, валидатор ругатся будет.
 
 Top
IOpeH
Отправлено: 24 Мая, 2009 - 14:03:26
Post Id



Частый гость


Покинул форум
Сообщений всего: 175
Дата рег-ции: Нояб. 2007  


Помог: 0 раз(а)




Ch_chov может потому что надо selected="selected" делать? ...
 
 Top
Ch_chov
Отправлено: 24 Мая, 2009 - 15:53:29
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008  
Откуда: из города


Помог: 90 раз(а)




Я про это и говорю.
В XHTML нельзя использовать короткие атрибуты.
http://www[dot]w3[dot]org/TR/xhtml1/#h-4[dot]5

(Отредактировано автором: 24 Мая, 2009 - 15:53:48)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB