Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > PHP: Общие вопросы > форма GET |
Автор: s00r 4.3.2004, 08:18 |
привет всем, объясните новичку такую вещь, я использую в странице index.php ввод логина и пароля методом get, с вызовом другой страницы с использованием введенных данных, но данные, которые были введены в начале не присваиваются переменным, что я делаю не так? index.php <html> <head> <title>пример</title> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <link rel="stylesheet" href="styles.css" type="text/css"> </head> <form action="php.php" method="get" name="loginform"> <table border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td> <div align="right">Логин: </div> </td> <td> <input type="text" name="userid" size="25"> </td> </tr> <tr> <td> <div align="right">Пароль: </div> </td> <td> <input type="password" name="userpwd" size="25"> </td> </tr> <tr> <td colspan="2"> <div align="center"> <br> <input type="submit" name="Submit" value=" Enter "> </div> </td> </tr> </table> </form> php.php <?php echo ("имя ... "); echo $userid; echo ("пасс ... "); echo $userpwd; ?> |
Автор: Secandr 4.3.2004, 09:39 |
Пользуй не $userid , а $_REQUEST['userid'] Или $_GET['userid'] |
Автор: Vaulter 4.3.2004, 12:17 |
s00r с точки зрения безопасности, передавать GET запросами $userid и $userpwd не рекомендуется... |
Автор: s00r 5.3.2004, 18:26 |
Спасибо за быстрый ответ, $_REQUEST['userid'] - работает, данные получаю теперь не с пом. GET, а с помощью POST. Но опять есть непонятка, с помощью INDEX.PHP получаю 'userid' и 'userpwd', если в PHP.PHP - он вызывается после ввода данных, стоит- <? echo ("имя ... "); echo $_REQUEST['userid']; echo ("пасс ... "); echo $_REQUEST['userpwd']; ?> то я вижу введенные имя и пароль, а если использую - <? ... if ( (isset($userid)) && (isset($userpwd)) ) { $query="select hostname,login,password from paslist where login='$userid' and password='$userpwd'"; $result=mysql_query ($query); if (mysql_num_rows($result) != 1 ) header("location:login_error.php"); else $hostname=mysql_result($result,0,"hostname"); } else header("location:login_error.php"); ... ?> то переменные не видятся, достаточно в начале файла PHP.PHP прописать - $userid=$_REQUEST['userid']; $userpwd=$_REQUEST['userpwd']; как начинает работать, правда не все, но переменные понимаются. Может какие ошибки в связи между собой APACHE+PHP+MYSQL, я сам ничего не настраивал, опыту еще мало, просто поставил ASPLinux 9 и все. Может подскажете, в какую сторону копать? И еще вопрос, есть в природе PHP-дебугеры под Linux? |
Автор: Коп 5.3.2004, 18:56 | ||||||
У тебя похоже не установлена переменная Register_Globals в положение On. Т. е. сейчас так:
А должно быть так:
Для винды - это файл php.ini. А в Линуксе - не знаю. Эта опция отвечает за такое вот присвоение:
, но автоматически. |
Автор: s00r 5.3.2004, 19:36 |
Хорошо, посмотрю. |
Автор: s00r 5.3.2004, 22:30 |
Спасибе всем, все заработало, включил - Register_Globals = On Кстати php.ini в Linuxe лежит в /etc |