0

Пример с ресурса. Форма с данными. При нажатии на кнопку должны выводиться введенные данные.

Когда нажимаю на кнопку, редиректит на пустую страницу http://*название домена*/check.php

В конфиг файле apache добавила .html .htm к AddType application/x-httpd-php .php .php5 .phtml

Подскажите, в чем проблема?

index.html:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title></title>
</head>
<body>
    <form action="check.php" method="POST">
        <p> Name: <input type="text" name="name"></p>
        <p> Surname: <input type="text" name="surname"></p>
        <p> E-mail: <input type="text" name=""email></p>
        <p> Message: <br><textarea name="message" cols="10" rows="5"></textarea></p>
        <p> <input type="submit" value="Send"></p>
    </form>
</body>
</html>

check.php:

<?php
    if($_SERVER['request_method'] === 'POST'){
        $name = $_POST['name'];
        $surname = $_POST['surname'];
        $email = $_POST['email'];
        $message = $_POST['message'];
    echo $name.&quot;&lt;br /&gt;&quot;.$surname.&quot;&lt;br /&gt;&quot;.$email.&quot;&lt;br /&gt;&quot;.$message.&quot;&lt;br /&gt;&quot;;
}

?>

.htaccess:

AddHandler application/x-httpd-php .php .html .shtml .htm

1 Answers1

1

Из кода вижу минимум две ошибки:

  1. $_SERVER['request_method'] - названия глобальных переменных пишутся в upper case, т.е. REQUEST_METHOD
  2. Ошибка при заполнении emails: <p> E-mail: <input type="text" name="email"></p>

Вот в таком виде у меня сработало, но не проверял настройки вашего веб сервера. Я запускал на встроенном php -S localhost:9000 -t ./

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title></title>
</head>
<body>
<form action="http://localhost:9000/check.php" method="POST">
    <p> Name: <input type="text" name="name"></p>
    <p> Surname: <input type="text" name="surname"></p>
    <p> E-mail: <input type="text" name="email"></p>
    <p> Message: <br><textarea name="message" cols="10" rows="5"></textarea></p>
    <p> <input type="submit" value="Send"></p>
</form>
</body>
</html>
<?php

if($_SERVER['REQUEST_METHOD'] === 'POST'){ $name = $_POST['name']; $surname = $_POST['surname']; $email = $_POST['email']; $message = $_POST['message'];

echo $name.&quot;&lt;br /&gt;&quot;.$surname.&quot;&lt;br /&gt;&quot;.$email.&quot;&lt;br /&gt;&quot;.$message.&quot;&lt;br /&gt;&quot;;

}

echo 'OK';

?>

raspberry
  • 557