Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Передача значений в php
 
 автор: shine   (23.07.2009 в 19:06)   письмо автору
 
 

Здравствуйте!Кто поможет по вопросу передачи значений переменных в php из одной html страницы на другую.Дело в том,что я не хочу,чтобы это происходило с помощью раскрывающегося списка
т.е вот так:
<form>
<select name="select_product" >
<option value="monitor" >Monitors</option>
<option value="printer" >Printers</option>
<option value="modem" >Modems</option>
<option value="scan" >Scans</option>
<option value="case" >Cases</option>
</select>
<input type="submit" value="show">
</form>

<?php
show_prices_list($select_product);
?>

Я хочу чтобы слева был раскрытый список, содержщий загаловки 'Monitors','Printers','Modems' и т. д. .При нажатии на них справа должно появляться соответственная информация.Какую форму мне использовать,чтобы получить имя продукта(например Modems),который выбрал пользователь и передать ее моей функции show_prices_list()?

Заранее спасибо

  Ответить  
 
 автор: Mirage   (23.07.2009 в 20:07)   письмо автору
 
   для: shine   (23.07.2009 в 19:06)
 

Тут ничего сложного нет, реализовать это можно только через Ajax, если Вы не хотите что бы каждый раз перезагружалась страница при выборе продукта....

  Ответить  
 
 автор: shine   (23.07.2009 в 21:12)   письмо автору
 
   для: Mirage   (23.07.2009 в 20:07)
 

А без Ajax-а никак?

  Ответить  
 
 автор: Mirage   (23.07.2009 в 21:27)   письмо автору
 
   для: shine   (23.07.2009 в 21:12)
 

Никак.

  Ответить  
 
 автор: Trianon   (23.07.2009 в 21:29)   письмо автору
 
   для: Mirage   (23.07.2009 в 21:27)
 

Чего это никак?
всего лишь страница будет перерисовываться.

  Ответить  
 
 автор: Mirage   (23.07.2009 в 21:36)   письмо автору
 
   для: Trianon   (23.07.2009 в 21:29)
 

Да Вы правы. Если только страница не громоздкая и не грузиться по "два часа"...

  Ответить  
 
 автор: Mirage   (23.07.2009 в 22:19)   письмо автору
 
   для: shine   (23.07.2009 в 19:06)
 

Переменные в php передаются из одной html страницы на другую с помошью супер глобальных массивов POST и GET
Для начало в теге form пропишите
<form action="index.php" method=GET>
Далее если вы не хотите раскрывающий список то добавьте слово multiple в теге select.
<select name="select_product" multiple>
Ну и остается проверить если выбран каталог то загружаем прайс
<?php
if(isset($_GET['select_product']))
show_prices_list($_GET['select_product']);
?>

P.S. не помешало бы еще проверять какой каталог выбран перед формированием списка что бы, при перезагрузке выделить его, тоесть например если выбрали monitors то после перезагрузке Вы выделяете тег <option value="monitor" selected >Monitors</option>

  Ответить  
 
 автор: sim5   (23.07.2009 в 22:46)   письмо автору
 
   для: Mirage   (23.07.2009 в 22:19)
 

Вообще-то лучше работать не по value="monitor", а по value="ID равное записи monitor", то есть числами. И для чего тут multiple? Что без этого список не раскроется? Значение multiple в списке означает, что в нем можно выбрать несколько значений, а не то, что его можно раскрыть!

  Ответить  
 
 автор: mirage   (24.07.2009 в 00:11)   письмо автору
 
   для: sim5   (23.07.2009 в 22:46)
 

>Значение multiple в списке означает, что в нем можно выбрать несколько значений, а не то, что его можно раскрыть!
Согласен, надо было просто проставить значение size="количеству элементов в списке"

>Вообще-то лучше работать не по value="monitor", а по value="ID равное записи monitor"
Это само собой, просто вопрос был составлен таким образом.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования