PHP не работает; вместо этого распечатайте код

Я хочу распечатать имя пользователя, пароль, адрес электронной почты, имя и фамилию в html и php. Однако он не работает, и вместо запуска кода он просто распечатывает код кода.

Вот код для SignUp.html:

<!DOCTYPE html>
<html>
  <body>
        <script src = "index.js"></script>
        <h1 class = "hg">Get Started</h1>

        <form action = "SignUpPhpTest.php" method = "get" class = "signup-form" >
            FirstName: <input type = "firstname" name = "firstname">

            Lastname: <input type = "lastname" name = "lastname">

            Email: <input type = "text" name = "mail" id = "mail">

            Username: <input type = "text" name = "Username" id = "Username">

            <label>
                Password: <input type = "password" name = "password" id = "password" type = "password" onkeyup='check();'>
            </label>

            <label>
                Confirm Password: <input type = "password" name = "confirm_password" id = "confirm_password"  onkeyup='check();'> 
                <span id='message'></span>
            </label>

            <input type = "submit" action = "SignUp.php" value = "submit">
        </form>

        <h2 class = "GenderHeading">Gender</h2>
        <form class = "Gender">
            <input type = "radio" name = "gender" value = "male">Male

            <input type = "radio" name = "gender" value = "Female">Female

            <input type = "submit" value = "submit">
        </form>
    </body>

    <link href = "index.css" rel = "stylesheet" type = "text/css" />
</html>

Обратите внимание, что он сохраняется как файл .html. А вот код файла SignUpTest.php:

<!DOCTYPE html>
<html>
    <head>
        <p>Info Gathered</p>
    </head>
    <body>
        <table>
            <tr>
                <td>
                    <?php 
                        $firstname = $_POST['fistname']; 
                        $lastname = $_POST['lastname']; 
                        $email = $_POST['mail']; 
                        $username = $_POST['username'];
                        $password = $_POST['password']; 

                        echo $firstname; 
                    ?>
                </td>
                <td>
                    <?php echo $lastname; ?>
                </td>
                <td>
                    <?php echo $email; ?>
                </td>
                <td>
                    <?php echo $username; ?>
                </td>
                <td>
                    <?php echo $password; ?>
                </td>
            </tr>
        </table>
    </body>
</html>

Обратите внимание, что этот файл сохранен как файл .php. Все это в Блокноте. У меня Windows 10.

Любая помощь приветствуется. Спасибо!!!

Какой веб-сервер вы используете? Браузер не может интерпретировать PHP.

EvE 09.09.2018 06:16
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
1
102
5

Ответы 5

Это потому, что вы помещаете <? Php

?>

После всего. Просто поместите <? Php в начало всего вашего php и?> Внизу.

Возможно, PHP не включен, проверьте папку с включенными модами в каталоге Apache (по умолчанию: / etc / apache2 /) и посмотрите, видите ли вы файл с именем php. Расширение должно быть .so.

В var/log/apache2/error.log можно увидеть все ошибки.

У меня нет Апача. Это нужно? (Извините, я новичок, мне 12.)

user9621927 10.09.2018 19:02

@ Арихан Шарма - Рэй Лоусон PS Нет, это не нужно. Вы можете запустить PHP, запустив: $ /path/to/php myfile.php // unix wayC:\php\php.exe myfile.php // windows way

Daniele 10.09.2018 19:20

Но где мне это поставить?

user9621927 11.09.2018 02:11

@Arihan Sharma - Ray Lawson PS в командной строке, я также предлагаю вам прочитать руководство для начинающих.

Daniele 11.09.2018 10:33

Ваш метод формы должен быть method = "POST", а не method = "get", и, пожалуйста, удалите этот <form class = "Gender">вы не можете использовать 2 формы на одной странице, так что, возможно, замените его на <div class = "Gender"> и переместите закрывающий </form> внизу.

<form action = "SignUpPhpTest.php" method = "get" class = "signup-form" >

к

<form action = "SignUpPhpTest.php" method = "POST" class = "signup-form" >

поскольку вы используете $_POST['datas'] на своем SignUpTest.php

Примечание*: убедитесь, что ваш Apache работает, чтобы убедиться, что PHP включен.

О том, что код распечатан, вы должны убедиться, что он работает под управлением apache и что PHP правильно настроен. Если вы работаете в Windows, вы можете попробовать xampp для простого и быстрого тестирования.

В приведенном вами примере есть много ошибок, для некоторых имен: 2 формы, форма отправляется как get в тестовом скрипте, вы ожидаете данные в сообщении, некоторые имена полей написаны с ошибками и т. д.

Пожалуйста, попробуйте этот упрощенный пример

<!DOCTYPE html>
<html lang = "en">
<head>
    <meta charset = "UTF-8">
    <meta name = "viewport" content = "width=device-width, initial-scale=1.0">
    <meta http-equiv = "X-UA-Compatible" content = "ie=edge">
    <title>Document</title>
</head>
<body>
    <form action = "test.php" method = "POST" class = "signup-form" >
        <p>
            FirstName: <input name = "firstname">
        </p>

        <p>
            Lastname: <input name = "lastname">
        </p>

        <p>
            Email: <input name = "mail">
        </p>

        <p>
            Username: <input name = "username">
        </p>

        <p>
            Password: <input type = "password" name = "password">
        </p>

        <p>
            Confirm Password: <input type = "password" name = "confirm_password"> 
        </p>

        <input type = "submit" value = "Submit">
    </form>
</body>
</html>

файл test.php

<?php
    $firstname = $_POST['firstname']; 
    $lastname  = $_POST['lastname']; 
    $email     = $_POST['mail']; 
    $username  = $_POST['username'];
    $password  = $_POST['password']; 
?>

<!DOCTYPE html>
<html>
    <head>
        <p>Info Gathered</p>
    </head>
    <body>
        <table>
            <tbody>
                <tr>
                    <td>First name</td>
                    <td><?= $firstname ?></td>
                </tr>
                <tr>
                    <td>Lastname</td>
                    <td><?= $lastname; ?></td>
                </tr>
                <tr>
                    <td>Email</td>
                    <td><?= $email; ?></td>
                </tr>
                <tr>
                    <td>Username</td>
                    <td><?= $username; ?></td>
                </tr>
                <tr>
                    <td>You should not do this in real apps</td>
                    <td><?= $password; ?></td>
                </tr>
            </tbody>
        </table>
    </body>
</html>

Это может произойти, если Apache неправильно настроен для загрузки PHP. Вы должны найти инструкции по установке обработчика PHP Apache 2 для вашей ОС и диспетчера пакетов, если он еще не установлен. Как только вы это сделаете, важные части вашего httpd.conf включают строку для загрузки самого модуля. например.

LoadModule php7_module modules/mod_php71.so

.. и раздел, указывающий apache использовать это для обработки файлов с расширением .php (обычно это отдельный включаемый файл), например.

<IfModule mod_php7.c>

AddType  application/x-httpd-php         .php
AddType  application/x-httpd-php-source  .phps

</IfModule>

Как только у вас будет правильная конфигурация, перезапустите apache, и ваш код должен выполняться.

Другие вопросы по теме