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
Форумы портала PHP.SU :: Версия для печати :: Помогите дописать скрипт выбора валют
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » Помогите дописать скрипт выбора валют

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

1. Pirat - 24 Июля, 2009 - 19:31:48 - перейти к сообщению
помогите пожалуйста дописать скрипт выбора валют....

CODE (text):
скопировать код в буфер обмена
  1. <?
  2.  
  3.  
  4. echo '<script language="javascript">
  5. function MyFunc(){
  6. this.form.submit();
  7. }
  8. </script>
  9. <FORM action="1.php" method="post" name="form">
  10. <select name="currency" onChange="MyFunc()">
  11.  
  12. <option label="ГРН" value="grn">ГРН</option>
  13. <option label="USD" value="usd">USD</option>
  14. <option label="EURO" value="euro">EURO</option>
  15. </select>
  16.  
  17. </FORM>';
  18.  
  19.  
  20. echo $_POST['currency'];
  21.  
  22.  
  23.  
  24.  
  25. ?>



1. Надо что при выборе валюты она оставалась.... а не возвращалась в первоначальное положение (т.е. ГРН)
2. по умолчанию чтоб $currency = grn;
2. Viper - 27 Июля, 2009 - 09:05:08 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $curr = array('grn'=>'ГРН', 'usd'=>'USD', 'eur'=>'EUR');
  3.  
  4. echo '<form action="index.php" method="post" name="form">
  5.         <select name="currency">';
  6.  
  7. foreach ($curr as $index=>$value) {
  8.         if (trim($_POST['currency']) == $index) {
  9.                 $selected = 'selected="selected"';
  10.         } else { $selected = ''; }
  11.         echo '<option '.$selected.' value="'.$index.'">'.$value.'</option>';
  12. }
  13.         echo '</select>
  14.         <input type="submit" value="send">
  15. </form>';
  16. ?>


1. Чтобы сгенерировать список и работать с ним заносим значения полей и их описания в массив.
2. через цикл генерим список
3. сравниваем полученное значение из $_POST с ключем из созданного нами массива и если совпадает то добавляем параметр к option, иначе ничего не добавляем к option.
3. Pirat - 27 Июля, 2009 - 16:23:17 - перейти к сообщению
Спасибо огромное Viper .... вот действительно то что я искал... !!!!

чуть доработал (убрал кнопку send)... и получил именно то что хотел....

CODE (text):
скопировать код в буфер обмена
  1. $curr = array('grn'=>'ГРН', 'usd'=>'USD', 'eur'=>'EUR');
  2.  
  3. echo '<form action="1.php" method="post" name="form">
  4.     <select name="currency" onchange="this.form.submit()">';
  5.  
  6. foreach ($curr as $index=>$value) {
  7.     if (trim($_POST['currency']) == $index) {
  8.         $selected = 'selected="selected"';
  9.     } else { $selected = ''; }
  10.     echo '<option '.$selected.' value="'.$index.'">'.$value.'</option>';
  11. }
  12.     echo '</select>
  13.  
  14. </form>';


еще раз огромное спасибо Viper По пиву!

 

Powered by ExBB FM 1.0 RC1