Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Объединение $_GET['variable'] и $_POST['variable, как? 
:(
    Опции темы
Wowa
  Дата 24.5.2003, 01:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: 1
Всего: 290



Как объединенить $_GET['variable'] и $_POST['variable'] ? Чтобы не различать в коде программы POST и GET, т.е. чтобы в самом начале программы определить, что и как и больше не заморачиваться с различием.

register_globals - OFF.
PM WWW   Вверх
Master
Дата 26.5.2003, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1530
Регистрация: 13.5.2003
Где: Mother Russia

Репутация: 8
Всего: 10



foreach($_REQUEST as $k=>$v){
if(!@Isset($$k)) {
$$k=$v;
global $$k;
}
}


--------------------
Вавилон, Вавилон
Что ты построил, что разрушил?
Вавилон, Вавилон
Плавятся души дьявольским огнем.
PM WWW ICQ   Вверх
Roland
Дата 29.5.2003, 11:04 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











extract($_GET);
extract($_POST);

И все переменные в глобале.

  Вверх
Wowa
Дата 30.5.2003, 22:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: 1
Всего: 290



Цитата
extract($_GET);
extract($_POST);

И все переменные в глобале.

Зашибись smile.gif Так легко smile.gif
А есть ли какие-то негативные последствия примерения ?
PM WWW   Вверх
Wowa
Дата 31.5.2003, 00:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: 1
Всего: 290



У меня программа состоит из множества функций. Не вызывать же мне в каждой функции

extract($_GET);
extract($_POST);


?
Значения теряются.
PM WWW   Вверх
Roland
Дата 31.5.2003, 10:36 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Хм. достаточно сделать extract один раз, а в функция[ переменные описывать как global
  Вверх
Wowa
Дата 31.5.2003, 21:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: 1
Всего: 290



Цитата
Хм. достаточно сделать extract один раз, а в функция[ переменные описывать как global

ИМХО легче еще раз сделать extract, чем все переменные описывать, как global smile.gif
А при добавлении еще какой-то переменной - и ее придется в global пихать.
PM WWW   Вверх
Guest
Дата 2.6.2003, 09:35 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата(Admin @ 31.5.2003, 21:10)
ИМХО легче еще раз сделать extract, чем все переменные описывать, как global smile.gif

Ну это как кому нравится smile.gif Если конечно переменных много то тогда бузусловно smile.gif
  Вверх
Master
Дата 2.6.2003, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1530
Регистрация: 13.5.2003
Где: Mother Russia

Репутация: 8
Всего: 10



а проще по моему register_globals включить.


--------------------
Вавилон, Вавилон
Что ты построил, что разрушил?
Вавилон, Вавилон
Плавятся души дьявольским огнем.
PM WWW ICQ   Вверх
IZ@TOP
Дата 2.6.2003, 10:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



Master Не знаю, я всегда пользуюсь чем то вроде -
// присваиваем $HTTP_*_VARS переменной покороче -
$PT = $HTTP_POST_VARS;
// Потом так ей и пользуюсь ...


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
arial
  Дата 2.6.2003, 13:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 772
Регистрация: 11.3.2003
Где: Архангельская обл .

Репутация: 6
Всего: 7



Цитата(Iz @ 2.6.2003, 11:01)
Master Не знаю, я всегда пользуюсь чем то вроде -
// присваиваем $HTTP_*_VARS переменной покороче -
$PT = $HTTP_POST_VARS;
// Потом так ей и пользуюсь ...

$PT = &$HTTP_POST_VARS;
Тогда лучше так, память сэкономиш. wink.gif
Прошу прощения за оффтоп.


--------------------
Есть люди, в которых живет Бог. Есть люди, в которых живет дьявол. А есть люди, в которых живут только глисты. (Ф. Раневская)
PM ICQ   Вверх
Master
Дата 2.6.2003, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1530
Регистрация: 13.5.2003
Где: Mother Russia

Репутация: 8
Всего: 10



Цитата
ИМХО легче еще раз сделать extract, чем все переменные описывать, как global
А при добавлении еще какой-то переменной - и ее придется в global пихать.


к сведению:
Эта функция экспортирует из ассоциативного массива элементы, делая их глобальными переменными!

http://www.php.net/extract


--------------------
Вавилон, Вавилон
Что ты построил, что разрушил?
Вавилон, Вавилон
Плавятся души дьявольским огнем.
PM WWW ICQ   Вверх
Wowa
Дата 2.6.2003, 21:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: 1
Всего: 290



Цитата
к сведению:
Эта функция экспортирует из ассоциативного массива элементы, делая их глобальными переменными!

http://www.php.net/extract


Да, это ясно. Но если вызвать extract вне функции, то в функции переменные будут недоступны!
Получается, то extract надо вызывать в самом теле функции.
Так ведь, вроде?


Цитата
$PT = &$HTTP_POST_VARS;

А дальше, что?
PM WWW   Вверх
Roland
Дата 3.6.2003, 12:59 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата(Master @ 2.6.2003, 14:11)

к сведению:
Эта функция экспортирует из ассоциативного массива элементы, делая их глобальными переменными!

Неправда ваша smile.gif Функця extract действительно разворачивает ассоциативный массив, но
только в текущей области видимости, если говорить словами пхп - в текущей символьной таблице. Таким образом если написать код:

$a['var1']="value1";
$a['var2']="value2";


d();

echo $var1; ----- это ничего не выведет

function d()
{
global $a;
extract($a);

echo $var1; ------ тут мы увидим value1

}


переменные $var1,$var2 уничтожатся при выходе из функции d()
  Вверх
Master
Дата 3.6.2003, 13:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1530
Регистрация: 13.5.2003
Где: Mother Russia

Репутация: 8
Всего: 10



Ты сам понял что написал?
Ты что считаеш что если в функции определить переменную глобальной её можно увидеть вне функции?

Это была цитата из справочника!!!

Это сообщение отредактировал(а) Master - 3.6.2003, 13:56


--------------------
Вавилон, Вавилон
Что ты построил, что разрушил?
Вавилон, Вавилон
Плавятся души дьявольским огнем.
PM WWW ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0565 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.