Jump to content
  • 0

Как разопределить переменные $HTTP_POST_VARS?


PixeL
 Share

Question

8 answers to this question

Recommended Posts

  • 0
Какую проблемы вы этим хотите решить?

Этим как правило не "решаются проблемы", а наоборот реализуются програмные решения (алгоритмы).

Попробуйте сами придумать где это можно применить.

Вот вам пример: - После заполнения формы все данные отправятся в БД, а в форме к примеру 20 полей (не нада спрашивать каких именно, не важно, пусть это будут системные настройки для сайта).

Так вот все поля передаются в виде массива $_POST ключами которого являются имена полей таблицы, ну а данные соответственно являются данными.

И только одна лишняя кнопочка, а именно кнопочка SUBMIT, которая тоже имеет свое имя, по которому мы и определим из какой формы были получены данные методом POST (ведь форма может быть не одна, тоже к примеру).

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

foreach($_POST as $k => $v);

но при этом ключ SUBMIT окажется лишним и что-бы он не пересчитывался в цикле, перед началом цикла этот ключ необходимо сбросить.

Итак весь алгоритм заполнения 20 полей таблицы будут выглядеть в трех строчках програмного кода:

if (isset($_POST['submit'])) {
unset($_POST['submit']);
foreach($_POST as $k => $v) mysql_query("UPDATE my_table SET $k='$v' WHERE id=1");
}

Суть понятна или нет? Ведь полей в таблице может быть не 20, а 100 (тоже к примеру). Так вот unset(); позволит избавиться от лишних ключей массива.

Собсна а к чему этот вопрос про надобность использовать unset() или нет?

Link to comment
Share on other sites

  • 0
Собсна а к чему этот вопрос про надобность использовать unset() или нет?

Этот вопрос к тому, что по своему опыту знаю, что многие, задавая подобные вопросы на самом деле делают совсем не то, что нужно.

Что последующий вопрос PixeL в полной мере и подтвердил.

PixeL, http://pyha.ru/forum/topic/257.msg3753#msg3753

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy