Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 17.08.2019, 14:41   #1
j238267431
 
Регистрация: 03.08.2019
Сообщений: 9
По умолчанию цикл для выпадающего списка

Добрый день

подскажите пожалуйста куда поместить цикл for в функции, чтобы переменная $a менялась и в выпадающем списке было от 1-31.
Если вставлять после select то цикл становится не активным

<?php


function select($name, $arr)
{

for ($a=1;$a<=31;$a++)
{
return
'<Select name="test">

<option> '.$a.' </option>
</select>';
}


}


?>

<form action = "" method="POST">
<?php echo select($name, $arr)?>
<input type ="submit">


</form>
j238267431 вне форума Ответить с цитированием
Старый 17.08.2019, 14:47   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,103
По умолчанию

Для начала вам надо цикл правильно написать и возвращать ОДИН СЕЛЕКТ и 32 ЩПШИОНА, а не одну строчку как сейчас.
p51x вне форума Ответить с цитированием
Старый 17.08.2019, 15:13   #3
j238267431
 
Регистрация: 03.08.2019
Сообщений: 9
По умолчанию

если поставить после селекта, то цикл неактивный становится Как его сделать активным / раскоментить?
Код:
<?php


function select($name, $arr)
{


	return
	'<Select name="test">

		for ($a=1;$a<=31;$a++)
		{
		<option> '.$a.' </option>
		}
	</select>';
	
}


?>

<form action = "" method="POST">
<?php echo select($name, $arr)?>
<input type ="submit">


</form>
_____
Код программы нужно выделять (форматировать) тегами [CODE] [/CODE] (читать FAQ)
Модератор

Последний раз редактировалось Serge_Bliznykov; 17.08.2019 в 18:38.
j238267431 вне форума Ответить с цитированием
Старый 17.08.2019, 18:41   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,260
По умолчанию

во-первых, для чего Вы передаёте в функцию select $name и $arr, если Вы их не используете?


во-вторых,
Цитата:
Сообщение от j238267431 Посмотреть сообщение
если поставить после селекта, то цикл неактивный становится
конечно, Вы же его в строчку засунули. поэтому получилась строчка, а не код.

попробуйте так:
Код:
function select($name, $arr)
{
  $s='<Select name="test">';
	

  for ($a=1;$a<=31;$a++)
  {
   $s .= '<option> '.$a.' </option>';
  }
  return $s . '</select>';
	
}
Serge_Bliznykov вне форума Ответить с цитированием
Старый 17.08.2019, 19:07   #5
j238267431
 
Регистрация: 03.08.2019
Сообщений: 9
По умолчанию

все понятно! Спасибо большое!
j238267431 вне форума Ответить с цитированием
Старый 18.08.2019, 11:38   #6
j238267431
 
Регистрация: 03.08.2019
Сообщений: 9
По умолчанию

Помогите еще пожалуйста
Не могу вывести запросы на экран
Вставлял в код везде
Код:
var_dump($_REQUEST)
но что то все без толку не выдает запрос а нужно чтобы выдал выбранные день месяц год и вывел на экран

Код:
<?php


function select($name, $arr,$q,$u)
{
	if ($u!=30)
	{
		$s='<Select name="test">';

		for ($a=$u;$a<=$q;$a++)
		{
			$s.= '<option value='.$_REQUEST['name'].'> '.$a.' </option>';
		}
		
		return $s . '</select>';
		
	}

	if ($u==30)
	{
		$s='<Select name="test">';
		foreach ($arr as $k)
		{
			$s.='<option>'.$k.'</option>';
		}		
		return $s. '</select>';
	}
	
}


$arr = [Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec];


?>

<form action = "" method="POST">
<?php
 echo select($name, $arr,'31','1');
 echo select($name, $arr,'40','30');
 echo select($name, $arr,date('Y'),'1900');

?>
<input type ="submit">
</form>
j238267431 вне форума Ответить с цитированием
Старый 18.08.2019, 18:31   #7
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,260
По умолчанию

Цитата:
Сообщение от j238267431 Посмотреть сообщение
но что то все без толку не выдает запрос а нужно чтобы выдал выбранные день месяц год и вывел на экран
что то мне подсказывает, что Вы не понимаете, как и где работает PHP и где и когда работает HTML форма (и когда идёт запрос к самому скрипту, где будет уже заполнен $_REQUEST).
почитайте Самые основы. Как работает PHP.

потому ещё раз задавайте свой вопрос о том, что Вы делаете и что хотите получить в результате.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 18.08.2019, 20:13   #8
j238267431
 
Регистрация: 03.08.2019
Сообщений: 9
По умолчанию

Да, пока не очень все понятно - пытаюсь самостоятельно изучить php. Теория лучше понимается на практике.
Я хочу вывести 3 селекта, в которых можно выбирать день месяц и год. Затем записать выбранные значения в переменную или вывести на экран с помощью функци. Без функции понятно как - уже сделал, а вот в функции пока не ясно
j238267431 вне форума Ответить с цитированием
Старый 18.08.2019, 22:42   #9
j238267431
 
Регистрация: 03.08.2019
Сообщений: 9
По умолчанию

а я понял мне нужно было разные имена давать селектам, а у меня было только одно на всех поэтому появлялся только последний сформированный.
j238267431 вне форума Ответить с цитированием
Старый 18.08.2019, 22:45   #10
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,260
По умолчанию

вы статью про основы PHP прочитали?
стало понятней?

если кратко - ваш локальный браузер обращается к серверу, если там скрипт на PHP, то его выполняет сервер, результатом выполнения является HTML код, который отдаётся браузеру на локальный компьютер. PHP скрипт на сервере полностью заканчивает работу. Полученный HTML код браузер отображает, выполняет JS код, если он там есть, применяет стили и прочее.
Если нужно, то браузер опять может обратиться к серверу (новый запрос), сервер опять запустит PHP код и результат вернёт в браузер.
Одновременно PHP и JS не работают.

Поэтому. Выполняется ваш скрипт, передаёт форму в браузер.
Вы в браузере что-то заполняете в форме, выполняете операцию Submit, при этом данные формы передаются на сервер в указанный в action обработчик, т.е. на сервере запускается скрипт, обрабатывает форму и возвращает новую HTML страницу.

Так понятней?

Цитата:
Сообщение от j238267431 Посмотреть сообщение
а я понял мне нужно было разные имена давать селектам,
Да, имена должны быть разными.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Настройка выпадающего списка Saine HTML и CSS 0 24.01.2017 00:24
Запрос для выпадающего списка Antony41 БД в Delphi 23 01.12.2015 22:42
Настройка выпадающего списка BenderMTB Microsoft Office Excel 1 10.11.2012 10:17
Стили выпадающего списка maxim339 HTML и CSS 1 05.01.2012 14:43
обработка выпадающего списка Небесный PHP 3 12.08.2011 14:31


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS