Я хочу распечатать имя пользователя, пароль, адрес электронной почты, имя и фамилию в 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
?>
После всего. Просто поместите <? Php в начало всего вашего php и?> Внизу.
Возможно, PHP не включен, проверьте папку с включенными модами в каталоге Apache (по умолчанию: / etc / apache2 /) и посмотрите, видите ли вы файл с именем php. Расширение должно быть .so.
В var/log/apache2/error.log можно увидеть все ошибки.
У меня нет Апача. Это нужно? (Извините, я новичок, мне 12.)
@ Арихан Шарма - Рэй Лоусон PS Нет, это не нужно. Вы можете запустить PHP, запустив: $ /path/to/php myfile.php // unix wayC:\php\php.exe myfile.php // windows way
Но где мне это поставить?
@Arihan Sharma - Ray Lawson PS в командной строке, я также предлагаю вам прочитать руководство для начинающих.
Ваш метод формы должен быть 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, и ваш код должен выполняться.
Какой веб-сервер вы используете? Браузер не может интерпретировать PHP.