2016-10-02 2 views
0

Что я пытаюсь сделать, это получить простой ввод от пользователя распечатки с помощью echo в моих тегах php, но по какой-то причине не работает. Я все еще новичок в php, поэтому, если кто-нибудь может мне помочь, это будет наркотик.Обработка форм PHP

Вот мой код:

<p> 
<form method="GET"> 
    <input type="text" name="firstname"> 
    <input type="submit" value="sub"> 
</form> 
</p> 


<?php 
    echo $_GET['firstname']; 
?> 

Файл сохраняется с расширением .php и на данный момент, я бегу локально на компьютере с помощью apache. Появляется HTML для формы, но когда я нажимаю кнопку submit, то не было введено echo. Я знаю, что он не подходит к коду внутри тега php, но я не уверен, как туда попасть.

+0

Вы просматриваете страницу с помощью 'http: //'? Если вы просматриваете источник, то присутствует PHP? – chris85

+0

Попробуйте 'action =" "' в теге '

'. – Xufox

+0

Разрабатывается ли файл PHP как один? Убедитесь, что вы просматриваете файл через сервер, а не как статический файл. – Terry

ответ

0

Есть две вещи, которые вы могли бы хотеть сделать:

  1. В виде действия записи <?php echo $_SERVER['PHP_SELF']; ?> PHP_SELF перенаправить вас на тот же .php файл с данными формы

  2. Чтобы избежать любой исключение, используйте функцию isset в последней части вашего кода, которая будет проверять наличие переменной POST или нет.

    <?php if(isset($_GET['firstname'])){ echo $_GET['firstname']; } ?>

+0

PHP_SELF не работает, давая мне ошибку 404 – halapgos1

+0

Извините, мой плохой, пожалуйста, проверьте отредактированный пост. Спасибо, и не забудьте проголосовать, если это сработает для вас. –

0

Для завершения этого вам потребуется действие, которое означает следующее:

<p> 
    <form method="GET" action="index.php"> 
    <input type="text" name="firstname"> 
    <input type="submit" name="submit" value="sub"> 
</form> 
</p> 

Кроме того, если вы хотели бы получить результат от формы каждый раз, когда вы нажмете на эту кнопку отправить, вам нужно «рассказать» php, что вы хотели бы, когда бы вы нажимали эту кнопку отправки, чтобы распечатать результат. Самый простой способ заключается в следующем:

<?php 
    if(isset($_GET['submit'])) 
    { 
    echo $_GET['firstname']; 
    } 
?> 
+0

Не работает. Я вижу это, если я нажимаю 'view source' на локальной странице, но он не выполняет php-код IDK WHY omg ... Я буквально схожу с ума rn smh – halapgos1

+0

Мое предложение будет копировать и вставлять точный код из здесь и попробуйте. Также не забудьте изменить имя файла, в который вы вставляете этот код, в index.php – h3k

Смежные вопросы