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 :: Версия для печати :: возврат значения из списка и [2]
Форумы портала PHP.SU » » Вопросы новичков » возврат значения из списка и

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

16. alezander - 08 Февраля, 2017 - 11:06:00 - перейти к сообщению
Sail пишет:
alezander1. session_start() выполняется? (var_dump($_SESSION); выполните - проконтролируете.)
2. Что есть kassa.base, со значением которой сравнивается то, что, предположительно было положено в сессию...
(Добавление)
alezander пишет:
возвращаеться на самое первое в списке
- нормальная реакция, если ни один из вариантов не 'selected'


1. Конечно и как на скриншоте видно после запроса переменная 3 имеет значение 2.
(var_dump($_SESSION); array(7) { ["user"]=> string(5) "admin" ["id"]=> string(1) "1" ["fname"]=> string(16) "Т" ["name"]=> string(18) "А" ["class"]=> string(1) "1" ["type"]=> string(1) "1" ["select"]=> string(1) "2" } все отлично значение есть.

2. вот весь текущий код , все что нужно чтобы select запомнил последний выбор после нажатия кнопки
Спойлер (Отобразить)
17. andrewkard - 08 Февраля, 2017 - 11:32:53 - перейти к сообщению
Насколько я правильно понял, этот код нужно подправить так:
PHP:
скопировать код в буфер обмена
  1.  
  2. <td><select name="base">
  3.     <?while ($row = mysqli_fetch_assoc($sqlbase)):?>
  4.     <option value="<?=$row['idofbase']?>"<?=$_SESSION['select'] == $row['idofbase'] ? "selected" : ""?>><?=$row['nameofbase']?></option>
  5.     <? endwhile?>
  6. </select></td>
  7.  
18. alezander - 08 Февраля, 2017 - 12:11:17 - перейти к сообщению
большое спасибо все понял.
(Добавление)
andrewkard пишет:
Насколько я правильно понял, этот код нужно подправить так:
PHP:
скопировать код в буфер обмена
  1.  
  2. <td><select name="base">
  3.     <?while ($row = mysqli_fetch_assoc($sqlbase)):?>
  4.     <option value="<?=$row['idofbase']?>"<?=$_SESSION['select'] == $row['idofbase'] ? "selected" : ""?>><?=$row['nameofbase']?></option>
  5.     <? endwhile?>
  6. </select></td>
  7.  


спасибо так работает! Но есть один нюанс при повторном нажатии на кнопку значение скачет с одного на выбранного значения на другое причем при каждом нажатии меняется значение в
CODE (htmlphp):
скопировать код в буфер обмена
  1. $_SESSION['select']
вот видео https://www[dot]youtube[dot]com/watch?v=qkIPvGCCKuo
19. andrewkard - 08 Февраля, 2017 - 13:25:19 - перейти к сообщению
Выводите в каждом случае что у Вас тут $row['idofbase'] и тут $_SESSION['select'], возможно разберетесь в причинах
20. teleoperator27 - 08 Февраля, 2017 - 14:39:16 - перейти к сообщению
потому что неправильно брать значение для селекта из сессии, а выводить данные из БД. В данных, которые ты выводишь из БД, есть это значение? Вот по нему и надо сравнивать

ЗЫ точнее, в селекте из базы, а сравнивать с $POST[], значение селекта же постом передается. Или я чего то не понимаю?
21. alezander - 08 Февраля, 2017 - 18:39:22 - перейти к сообщению
teleoperator27 пишет:
потому что неправильно брать значение для селекта из сессии, а выводить данные из БД. В данных, которые ты выводишь из БД, есть это значение? Вот по нему и надо сравнивать

ЗЫ точнее, в селекте из базы, а сравнивать с $POST[], значение селекта же постом передается. Или я чего то не понимаю?


Спасибо получилось через $_POST

 

Powered by ExBB FM 1.0 RC1