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 Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
alezander
Отправлено: 07 Февраля, 2017 - 16:37:25
Post Id


Новичок


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


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




Суть проблемы. Получаю значение из базы с помощью данного куска кода
Спойлер (Отобразить)

И после вывожу нужные значение в виде таблицы с возможностью их редактировать
Спойлер (Отобразить)

После измененные данные отправляю в базу.
Спойлер (Отобразить)


Все что я хочу отобразить в виде select(выпадающего списка) пункт который отмечен красным на скриншоте.
Спойлер (Отобразить)


idofbase nameofbase
1 Погашение
2 Выдача
3 Оплата электричества
4 Хозяйственные расходы
5 Пролонгация
6 Аренда
7 Покупка химии


editkassa.php
Спойлер (Отобразить)

Прикреплено изображение (Нажмите для увеличения)
1.png

(Отредактировано автором: 07 Февраля, 2017 - 18:15:24)

 
 Top
teleoperator27
Отправлено: 07 Февраля, 2017 - 17:58:02
Post Id



Посетитель


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


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




Капец. Когда грамотность раздавали, тебе запятых не досталось? Хорошо, хоть пробелы дали. Теперь задай вопрос по-русски, а то белиберда какая-то написана.
 
My status
 Top
alezander
Отправлено: 07 Февраля, 2017 - 18:22:59
Post Id


Новичок


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


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




Более развернуто написал, надеюсь понятней.

скриншот ниже пример списка.
Прикреплено изображение (Нажмите для увеличения)
3.jpg

(Отредактировано автором: 07 Февраля, 2017 - 18:30:47)

 
 Top
teleoperator27
Отправлено: 07 Февраля, 2017 - 18:47:32
Post Id



Посетитель


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


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




Теперь стало понятней. Кроме одного - самой проблемыУлыбка Вопрос в чем? Что не получается?
 
My status
 Top
alezander
Отправлено: 07 Февраля, 2017 - 19:17:11
Post Id


Новичок


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


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




teleoperator27 пишет:
Теперь стало понятней. Кроме одного - самой проблемыУлыбка Вопрос в чем? Что не получается?


Не пойму как правильно добавить select
CODE (htmlphp):
скопировать код в буфер обмена
  1.     echo "<td>" . "<input type=text name=base value=" . $row['base'] . " </td>";
тут у меня просто выводит текущие значение, а хотелось бы так как на скриншоте во втором посте.

Сам select вот он
CODE (htmlphp):
скопировать код в буфер обмена
  1. $sql = mysqli_query($connection, "SELECT `idofbase`, `nameofbase` FROM `nameofbase`") or die(mysqli_error($connection));
  2. <th><select name="base">
  3.     <?while ($row = mysqli_fetch_assoc($sql)):?>
  4.     <option value="<?=$row['idofbase']?>"><?=$row['nameofbase']?></option>
  5.     <? endwhile?>
  6. </select></th>
все с ним понятно но как его интегрировать чтобы выпало нужное значение, я его выбрал в виде представления (названия) и отправил в базу. условие такое что kassa.base = nameofbase.idofbase
(Добавление)
И еще вопрос как сделать чтобы запоминало последние выбранное значение в select ?

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. $sqlbase = mysqli_query($connection, "SELECT `idofbase`, `nameofbase` FROM `nameofbase`") or die(mysqli_error($connection));          
  3. <td><select name="base">
  4.     <?while ($row = mysqli_fetch_assoc($sqlbase)):?>
  5.     <option value="<?=$row['idofbase']?>"><?=$row['nameofbase']?></option>
  6.     <? endwhile?>
  7. </select></td>


после выбора.

(Отредактировано автором: 07 Февраля, 2017 - 20:10:44)

 
 Top
teleoperator27
Отправлено: 07 Февраля, 2017 - 20:18:14
Post Id



Посетитель


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


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




Цитата:
все с ним понятно но как его интегрировать чтобы выпало нужное значение, я его выбрал в виде представления (названия) и отправил в базу.
ни черта не понял, короче. Какое представление, при чем тут представление? Кого в кого интегрировать? Кто на ком стоял? Надо писать по-русски, а не воротить кучу ненужных и не несущих в себе нагрузки слов. Что в этом селекте должно быть? Выпадающий список из БД? Ну так и выводи из БД в цикле эти опшины. Самостоятельно его выведи, дахоть другим файлом, да приинклюдь его в таблицу. А значение
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?=$row['idofbase']?>

как раз и поможет сделать нужный опшин выбранным.
 
My status
 Top
alezander
Отправлено: 07 Февраля, 2017 - 21:01:08
Post Id


Новичок


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


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




Не знаю как еще подробней объяснить первый вопрос.

Но по второму вопросу так не получается как вы написали после нажатия кнопки сбивается на самое первое значение в списке.

вот вообще весь код с этого файла kassao.php

Спойлер (Отобразить)


Может быть переменную из select после нажатия на кнопку надо закинуть в массив какой - то созданный но я не знаю как это работает с select где у него и так есть значение idofbase и преставление nameofbase, чтобы вернуть значение даты я использую $_POST или $_GET как к примеру во тут.
CODE (htmlphp):
скопировать код в буфер обмена
  1. <input type="date" name="datetwo" value="<?php echo $_POST['datetwo']?>

(Отредактировано автором: 07 Февраля, 2017 - 21:28:58)

 
 Top
teleoperator27
Отправлено: 07 Февраля, 2017 - 21:59:04
Post Id



Посетитель


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


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




Шок блииин... в чем вопрос состоит? Не выводится выпадающий список? Или выводится, а ты не знаешь, что с ним делать? я уже голову сломал в этой головоломке.


ты же сам написал
PHP:
скопировать код в буфер обмена
  1.  kassa.base = nameofbase.idofbase

то есть ты в любом случае получаешь из запроса что то типа


вот через него и выделяй селект

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2.  
  3. <select name="base">
  4.     <?while ($row = mysqli_fetch_assoc($sqlbase)):?>
  5.  
  6.     <option value="<?=$row['idofbase']?>"><?=$row['nameofbase']?></option>
  7.  
  8.     <? endwhile?>
  9. </select>
  10.  
  11. <option value="<?=$row['idofbase']?>"<?=nameofbase.idofbase == kassa.base  ? "selected" : ""?>><?=$row['nameofbase']?></option>
  12.  
  13.  


Это для примера, что бы логика была понятна.
 
My status
 Top
Строитель Модератор
Отправлено: 07 Февраля, 2017 - 22:01:42
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


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




alezander пишет:
как сделать чтобы запоминало последние выбранное значение в select ?
Можно куда-то сохранять (например в базу) значение выбранного селекта, и при выводе проверять в условии, если это значение совпадает с тем, которое было сохранено, то подставлять в этой итерации к тегу option атрибут selected. Ниже я на примере показал, только вместо базы я использовал сессии.
Спойлер (Отобразить)
 
 Top
alezander
Отправлено: 07 Февраля, 2017 - 22:22:28
Post Id


Новичок


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


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




teleoperator27 пишет:
Шок блииин... в чем вопрос состоит? Не выводится выпадающий список? Или выводится, а ты не знаешь, что с ним делать? я уже голову сломал в этой головоломке.
.


Список выводиться, данные при нажатии кнопки по критериям выводит верно, но состояние кнопки после ее нажатия возвращаеться на самое первое в списке.

(Отредактировано автором: 07 Февраля, 2017 - 22:27:38)

 
 Top
Строитель Модератор
Отправлено: 07 Февраля, 2017 - 22:27:36
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


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




alezander, мой пример смотрели? http://forum.php.su/topic.php?fo...97702#1486497702
 
 Top
alezander
Отправлено: 07 Февраля, 2017 - 22:31:43
Post Id


Новичок


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


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




[quote=Строитель][/quote] спасибо к одиночному значению подошло и все выводиться, а что делать если у меня все выводимое форма ? нужную строчку которая должна стать selectom.

CODE (htmlphp):
скопировать код в буфер обмена
  1.         echo "<form action=editkassa.php method=post>";
  2.         echo "<tr>";
  3.     echo "<td>" . "<input type=number name=id value=" . $row['id'] . " </td>";
  4.     echo "<td>" . "<input type=number name=numberdocument value=" . $row['numberdocument'] . " </td>";
  5.     echo "<td>" . "<input type=text name=numberagreement value=" . $row['numberagreement'] . " </td>";
  6.     echo "<td>" . "<input type=text name=nameofclient value=" . $row['nameofclient'] . " </td>";
  7.    // echo "<td>" . "<input type=text name=base value=" . $row['base'] . " </td>";
  8.     echo "<td>" . "<input type=number name=coming value=" . $row['coming'] . " </td>";
  9.     echo "<td>" . "<input type=number name=consumption value=" . $row['consumption'] . " </td>";
  10.     echo "<td>" . "<input type=number name=bodyloan value=" . $row['bodyloan'] . " </td>";
  11.     echo "<td>" . "<input type=number name=interest value=" . $row['interest'] . " </td>";
  12.     echo "<td>" . "<input type=number name=fine value=" . $row['fine'] . " </td>";
  13.     echo "<td>" . "<input type=number name=well value=" . $row['well'] . " </td>";
  14.     echo "<td>" . "<input type=date name=date value=" . $row ['date'] . " </td>";
  15.     echo "<td>" . "<input type=submit name=update value=обновить" . " </td>";
  16.         echo '</tr>';
  17.         echo "</form>";

(Добавление)
опробовал еще вот так сохраняет почему - то теперь последние значение

Спойлер (Отобразить)

(Отредактировано автором: 07 Февраля, 2017 - 23:11:47)

 
 Top
Строитель Модератор
Отправлено: 07 Февраля, 2017 - 23:53:28
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


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




alezander пишет:
а что делать если у меня все выводимое форма ?
Вы имеете ввиду множественный выбор? Если да, то добавьте к тегу select атрибут multiple , а к значению атрибута name="select" из моего примера добавьте две квадратные скобки "[]", т.е. так:
name="select[]"

PS: Весь ваш код асиливать врятли кто-то возьмётся.
 
 Top
alezander
Отправлено: 08 Февраля, 2017 - 00:22:13
Post Id


Новичок


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


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




Может если зарисую будет понятней, у меня не получается вернуть переменную через selected. Надо наверное теорию почитать еще. Всем спасибо за ответы.
Прикреплено изображение (Нажмите для увеличения)
12.jpg
 
 Top
Sail
Отправлено: 08 Февраля, 2017 - 08:27:25
Post Id



Участник


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


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




alezander1. session_start() выполняется? (var_dump($_SESSION); выполните - проконтролируете.)
2. Что есть kassa.base, со значением которой сравнивается то, что, предположительно было положено в сессию...
(Добавление)
alezander пишет:
возвращаеться на самое первое в списке
- нормальная реакция, если ни один из вариантов не 'selected'
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB