Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 27.03.2012, 21:05
Профессор
Отправить личное сообщение для kilogram Посмотреть профиль Найти все сообщения от kilogram
 
Регистрация: 19.03.2012
Сообщений: 163

Прокомментировать пару строк кода
Расшифруйте логику работы что куда берется и получается в этом цикле.
Смущают вот эти названия в параметрах как ими манипуляция происходит ['doGo'] и ['known'] ?
Что откуда куда достается и вставляется куда?

Код:
<html><body>
<?php
if(@$_REQUEST['doGo']) {
	foreach(@$_REQUEST['known'] as $k=>$v) {
	if($v) echo "Вы знаете язык $k!<br>";
	else echo "Вы не знаете языка $k. <br>";
	}
}
?>
<form action="<?=$_SERVER['SCRIPT_NAME'] ?>" method="post">
Какие языки программирования вы знаете? <br>
<input type="hidden" name="known[php]" value="0">
	<input type="checkbox" name="known[php]" value="0">PHP<br>
<input type="hidden" name="known[php]" value="0">
<input type="checkbox" name="known[Perl]" value="0">Perl<br>
<input type="submit" name="doGo" value="Go">
</form>

</body></html>
Ответить с цитированием
  #2 (permalink)  
Старый 28.03.2012, 15:18
Аватар для T-sh
Профессор
Отправить личное сообщение для T-sh Посмотреть профиль Найти все сообщения от T-sh
 
Регистрация: 04.12.2009
Сообщений: 579

у <input type="checkbox"> value должен быть равен 1.

суть простая:
форма методом POST передает на эту же страницу массив known[]

со значениями: php и perl , которые, если не отмечены, должны быть равны 0, а если отмечены, по логике должны быть равны 1.

php получает этот массив (все данные, передаваемые POST или GET) хранятся в глобалке: $_REQUEST.

и дальше проверяет (foreach(@$_REQUEST['known'] as $k=>$v) — разбирает массив на $k — индексы (т.е. php,perl и т.д.) и $v — значения (0 или 1).
если known[php] = true ( не равно 0, т.е. было выбрано в форме), то выводит на страницу "Вы значете язык php", если false (равно 0), то пишет, что вы не знаете
__________________
С моих слов записано верно.
Ответить с цитированием
  #3 (permalink)  
Старый 28.03.2012, 22:34
Профессор
Отправить личное сообщение для kilogram Посмотреть профиль Найти все сообщения от kilogram
 
Регистрация: 19.03.2012
Сообщений: 163

Я хотел спросить как попадают элементы массива known в МАССИВ РИКВЭСТ в этом коде?
Ответить с цитированием
  #4 (permalink)  
Старый 28.03.2012, 22:54
Профессор
Отправить личное сообщение для kilogram Посмотреть профиль Найти все сообщения от kilogram
 
Регистрация: 19.03.2012
Сообщений: 163

То есть написав просто какое-то значение в поле name, например name="vasya" в глобальный массив REQUEST доступен во всех файлах, значение vasya полетит в РИКВЭСТ и запишется в него такое: $REQUEST['vasya'], а написав так name="vasya['Pupkin']" я вроде создаю этим двумерный массив в масиве РИКВЭСТ? Получается в РИКВЕСТЕ такое после name="vasya['Pupkin']" ----> $REQUEST['vasya']['Pypkin']?
Ответить с цитированием
  #5 (permalink)  
Старый 29.03.2012, 10:34
Аватар для T-sh
Профессор
Отправить личное сообщение для T-sh Посмотреть профиль Найти все сообщения от T-sh
 
Регистрация: 04.12.2009
Сообщений: 579

Сообщение от kilogram Посмотреть сообщение
То есть написав просто какое-то значение в поле name, например name="vasya" в глобальный массив REQUEST доступен во всех файлах, значение vasya полетит в РИКВЭСТ и запишется в него такое: $REQUEST['vasya'], а написав так name="vasya['Pupkin']" я вроде создаю этим двумерный массив в масиве РИКВЭСТ? Получается в РИКВЕСТЕ такое после name="vasya['Pupkin']" ----> $REQUEST['vasya']['Pypkin']?
да, именно так

<input ... name="vasya['Pupkin']" ... value = "Значение">


в REQUEST будет:

$REQUEST['vasya']['Pypkin'] = "Значение"
__________________
С моих слов записано верно.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
скрыть из исходного кода часть javascript кода. javasc Javascript под браузер 10 12.03.2014 09:32
аналог двух строк кода создания Range-объкта для ie syegorius Events/DOM/Window 2 13.01.2012 15:14
Номера строк и Chrome LRCenter Opera, Safari и др. 9 09.11.2011 15:53
Поясните пару строк в функции DeL90 jQuery 1 18.02.2011 23:25
Прокомментировать пару непонятных мест Golovastik Серверные языки и технологии 12 22.09.2010 17:15