#php #forms #post
#php #формы #Публикация
Вопрос:
Я использую простой следующий код для создания формы и получения ее значений на другой странице:
firstpage.php
<form action="checklogin.php" method="post" >
<table border=1>
<tr><td>Username </td><td><input type="text" name="txtuser" /></td></tr>
<tr><td>Password </td><td><input type="text" name="txtpwd" /></br>
</td></tr>
<tr><td><input type="submit" value="Login now" name="btnsub"/>
</table>
</form>
checklogin.php
<html>
<body>
Welcome <?php echo $_POST['txtuser']; ?>
</body>
</html>
Этот код не отображает значение входных данных txtuser
в nxtpage.php во всех браузерах.
Комментарии:
1. Вы отправляете на
checklogin.php
, но пытаетесьecho
сохранить содержимое наnextpage.php
. Я бы назвал это проблемой.2. Пожалуйста, примите больше ваших предыдущих ответов. В этом случае вы не отправляете данные в nextpage.php но checklogin.php таким образом, переменная $ _POST пуста.
3. Пожалуйста, всегда используйте
htmlspecialchars
, если вы хотите вывести пользовательский ввод на HTML-страницу.4. Я перенаправляю на checklogin.php используя только атрибут action form .Пожалуйста, игнорируйте nextlogin.php .. Теперь, пожалуйста, выясните причину, по которой y не отображается содержимое txtuser.
Ответ №1:
Вы отправляете сообщение на checklogin.php
. Конечно nextpage.php
, у него не будет значения POST. Попробуйте вставить это в сеанс.
Ответ №2:
Является ли ваша форма целевой checklogin.php или nxtpage.php ? Поскольку , если это checklogin.php , вполне естественно nxtpage.php не получит переменные POST, отправленные в checklogin.php .
Если вы просто не делаете что-то очень простое, вы хотите использовать сеансы — например, смотрите этот учебник о сеансах.
Ответ №3:
Прочитайте эту передающую переменную на другую страницу.