Re: PHP-Не могу обработать форму.
От: Кодт Россия  
Дата: 17.06.03 09:52
Оценка: 3 (1)
Здравствуйте, Fluffy, Вы писали:

F>register_globals в настройках php включена


Вообще-то это потенциальная дырка в безопасности. Так можно в скрипт накидать кучу разной ерунды.
Если уж тебе хочется, лучше сделай так:
// в начале скрипта:
// кэширование параметров

$g_name = $HTTP_GET_VARS['name'];
$g_mail = $HTTP_GET_VARS['mail'];
// ты запоминаешь только те параметры, которые ожидаешь.


Можно даже автоматизировать:
/////////
// library.php

define('getvar', 'gv_'); // префикс всех get-переменных
define('postvar', 'pv_'); // префикс всех get-переменных

function get_var($id)
{
  global $HTTP_GET_VARS;
  $GLOBALS[getvar.$id] = $HTTP_GET_VARS[$id];
}
function get_vars($ids)
{
  foreach($ids as $id)
    get_var($id);
}
function post_var($id)
{
  global $HTTP_POST_VARS;
  $GLOBALS[postvar.$id] = $HTTP_POST_VARS[$id];
}
function post_vars($ids)
{
  foreach($ids as $id)
    post_var($id);
}



///////////
// main.php

include_once('library.php');

get_vars(array('name', 'mail')); // забираем нужные переменные

........

echo "name is $gv_name, mail is $gv_mail";
Перекуём баги на фичи!
PHP-Не могу обработать форму.
От: Fluffy Россия  
Дата: 30.05.03 15:31
Оценка:
Недавно начал изучать php, а по этому не понимаю в чём дело. Вопрос.
В форме вводится имя, обрабатывает форму скрипт.
register_globals в настройках php включена, но при попытке вывести имя
пользователя $name выдаёт пустую строку. В $_POST['name'] тоже ничего
нет. Стоит сервер Apache.
Re: PHP-Не могу обработать форму.
От: MOPO3 Литва  
Дата: 02.06.03 13:30
Оценка:
Здравствуйте, Fluffy, Вы писали:

F>Недавно начал изучать php, а по этому не понимаю в чём дело. Вопрос.

F>В форме вводится имя, обрабатывает форму скрипт.
F>register_globals в настройках php включена, но при попытке вывести имя
F>пользователя $name выдаёт пустую строку. В $_POST['name'] тоже ничего
F>нет. Стоит сервер Apache.

Nu dlia nachala pokazhi hot kod to tvoi s formoi.
A voobshe prover kakaja u tebia PHP versija. Globalnie peremennie tipa $_GET, $_POST, $_SERVER i t.d. pojavilis ne tak davno.
Re: PHP-Не могу обработать форму.
От: Кодт Россия  
Дата: 17.06.03 08:52
Оценка:
Здравствуйте, Fluffy, Вы писали:

F>Недавно начал изучать php, а по этому не понимаю в чём дело. Вопрос.

F>В форме вводится имя, обрабатывает форму скрипт.
F>register_globals в настройках php включена, но при попытке вывести имя
F>пользователя $name выдаёт пустую строку. В $_POST['name'] тоже ничего
F>нет. Стоит сервер Apache.

А ты это случаем не в контексте функции делаешь? Тогда нужно вспомнить про правила видимости глобальных переменных.
function doSomething()
{
  global $name;
  echo "you are $name";
}
Перекуём баги на фичи!
Re: PHP-Не могу обработать форму.
От: Andre Украина  
Дата: 17.06.03 09:52
Оценка:
Здравствуйте, Fluffy, Вы писали:

F>Недавно начал изучать php, а по этому не понимаю в чём дело. Вопрос.

F>В форме вводится имя, обрабатывает форму скрипт.
F>register_globals в настройках php включена, но при попытке вывести имя
F>пользователя $name выдаёт пустую строку. В $_POST['name'] тоже ничего
F>нет. Стоит сервер Apache.

Попробуй посмотреть $_REQUEST['name']
Возможно у тебя в форме явно не прописан метод передачи данных и они уходят GETом.
... << RSDN@Home 1.1 alpha 1 >> // Sticky Fingaz — Sister I'm Sorry (Feat Choclatt)
Я бы изменил мир — но Бог не даёт исходников...
Re: PHP-Не могу обработать форму.
От: Rumata Россия http://atamur.livejournal.com
Дата: 18.06.03 18:30
Оценка:
Здравствуйте, Fluffy, Вы писали:

F>Недавно начал изучать php, а по этому не понимаю в чём дело. Вопрос.

F>В форме вводится имя, обрабатывает форму скрипт.
F>register_globals в настройках php включена, но при попытке вывести имя
F>пользователя $name выдаёт пустую строку. В $_POST['name'] тоже ничего
F>нет. Стоит сервер Apache.
Если в $_POST['name'] ничего нет, то во-первых ты мог передавать гетом, во вторых, у тебя может быть старая версия пхп. В общем, приведи полный листинг того, что у тебя не работает — вместе с исходной формой.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.