[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Курсы PHP. Урок №2 от IRBIS-team
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
Гость_Sergei
А, и еще, пример у меня отказался работать. $_GET['route'] всегда пустой.

RewriteRule ^(.*)$ index.php?route=$1 [L,QSA] не срабатывает. Уж незнаю почему.
Может $_SERVER['REQUEST_URI'] лучше использовать?

Я вот наколенках набросал
if(!empty($_SERVER['REQUEST_URI']))   
{
$temp = explode('?', trim($_SERVER['REQUEST_URI'], '/'));

$get = explode('/', trim($temp[0], '/'));
$i = 0;

foreach($GET as $var => $val)
{
if(!empty($get[$i]))
$GET[$var] = $get[$i];

++$i;
}
if(!empty($temp[1])){
$get = explode('&', $temp[1]);
foreach($get as $val)
{
$t=explode('=', $val);
$GET[$t[0]] = $t[1];
}
}
}


посмотрите, что скажете?
sc2r2bey
почитал нашел для себя полезное, но есть пару вопросов:
1. насколько целесообразно подключать модули через switch
2. почему данные из массива $_GET подставляются без фильтрации, кроме trim?
3. в каких случаях целесообразно использовать include а в каких include_once?
4. а как сделать, чтоб не было путаницы, т.к. файлы могут лежать на разной глубине от 404.html, т.е явно и универсально задать к нему пут в коде:
     if(!defined('KEY')){
header("HTTP/1.1 404 Not Found");
exit(file_get_contents('./404.html'));

5. мне кажется название переменной идентичной с названием глобальной переменной вызывает некую сумятицу и путаницу, я про $GET и $_GET, и еще $get
XCross
Решил еще раз попробовать. Остановился вот здесь:

/**   
* Initialization of variables POST
* Инициализация переменных POST
*/


$ok = !empty($_POST['ok'])?true:false;
$delete = !empty($_POST['delete'])?true:false;

$POST['value1'] = !empty($_POST['value1']) ? $_POST['value1'] : NULL;
$POST['value2'] = !empty($_POST['value2']) ? $_POST['value2'] : NULL;
$POST['value3'] = !empty($_POST['value3']) ? $_POST['value3'] : NULL;
$POST['value4'] = !empty($_POST['value4']) ? $_POST['value4'] : NULL;


/**
* Other variables
* Другие переменные
*/

$info = array();


Пока фантазии не хватает. Twin, объясните, для чего это? Пока решил, что если не пойму, то дальше двигаться - в небо пальцем тыкать :(

_____________
Обмен Ukash на WebMoney
nugle
kmaks
я не twin, но попробую объяснить
смотри:
первые 2 строчки показывают, какая кнопка нажата

посмотри внимательно форму, там name прописан по очереди value1, value2,value3, value4, хотя логичнее было бы назвать своими именами, делается это для того, чтобы при разрастании форм на сайте, не становилось больше строк в файле veriables

так понятно?
XCross
Дак в том то и дело что не понятно для какой формы они предназначены? В какой из форм будут использоваться элементы с такими именами? Где эту форму смотреть?
Пока не понято... особенно то, что форм на сайте становится больше и из-за этого мы производим инициализацию переменных с именами непонятно чего... sad.gifя
И главный вопрос: почему здесь используется проверка функцией empty? ведь нотайс же получим? sad.gif

_____________
Обмен Ukash на WebMoney
nugle
kmaks
Макс, ну ты чего гонишь, этоже шаг 6
там есть форма
<form action="" method="post"> 
<h4>
Тайтл</h4>
<input
name="form[value1]" type="text" size="70" value="<?php echo $POST['value1']; ?>" />
<h4>
Ключевые слова</h4>
<textarea
name="form[value2]" cols="50" rows="8"><?php echo $POST['value2']; ?></textarea>
<h4>
Описание</h4>
<textarea
name="form[value3]" cols="50" rows="8"><?php echo $POST['value3']; ?></textarea><br />
<input
name="ok" type="submit" />
</form>

или ты про какой шаг?
XCross
Цитата
Макс, ну ты чего гонишь, этоже шаг 6
там есть форма

Да уже 3 попытка и ужас как непонятно =(


А урок намбер ту... Или там все цЕпочкой тянется? От простого сайта до ядра? И в каждой новой ступени используются элементы старой? sad.gif Этож... ппц. прийдется идти в самое начало =(

_____________
Обмен Ukash на WebMoney
maurise
Вообще, это сделано для того, чтобы использовать абсолютно во всех формах. Универсальный вариант так сказать
XCross
blink.gif Все. Кранк... Пофигу, пропущу этот раздел, принципи не такой уж и важный, больше плясок с бубнами...

_____________
Обмен Ukash на WebMoney
nugle
Ну вообще ядро с нуля расписывается. Выложи ссылку с уроком, просто шаг2 это инициализация гет переменных
XCross
http://irbis-team.com/15/16/2

_____________
Обмен Ukash на WebMoney
nugle
kmaks
там же все просто(легкая версия ведь :D ).
Цитата
Обратите внимание, мы не знаем, какие понадобятся переменные. Если приложение большое, то их может оказаться огромное количество. По этому, не мудря, просто пронумеруем их и будем использовать по порядку.

т.е. на сайте могут появиться формы, к примеру

<form action="" method="post"> 
<h4>
Тайтл</h4>
<input
name="form[value1]" type="text" size="70" value="<?php echo $POST['value1']; ?>" />
<h4>
Ключевые слова</h4>
<textarea
name="form[value2]" cols="50" rows="8"><?php echo $POST['value2']; ?></textarea>
<h4>
Описание</h4>
<textarea
name="form[value3]" cols="50" rows="8"><?php echo $POST['value3']; ?></textarea><br />
<input
name="ok" type="submit" />
</form>


и на другой странице другая, но для это страници мы можем сделать так

<form action="" method="post"> 
<h4>
Тайтл</h4>
<input
name="form[title]" type="text" size="70" value="<?php echo $POST['title']; ?>" />
<h4>
Ключевые слова</h4>
<textarea
name="form[keywords]" cols="50" rows="8"><?php echo $POST['keywords']; ?></textarea>
<h4>
Описание</h4>
<textarea
name="form[description]" cols="50" rows="8"><?php echo $POST['description']; ?></textarea><br />
<input
name="ok" type="submit" />
</form>


Но на другой странице тоже придется вводить свои обозначения, и получиться уже 6 строк, а если мы поставим на name value1 и т.д., то не придется вводить новые обозначения, мы все равно получим значение, с новой формы.
Как то так
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.