2013-11-15 5 views
1

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

Я создал папку под названием Веб-сайт. В нем я создал html-файл index.html. Я также создал файл submit.php.

(этот код взят из: http://www.w3schools.com/php/php_forms.asp)

В index.html у меня есть:

<html> 
<body> 

<form action="submit.php" method="post"> 
Name: <input type="text" name="name"><br> 
E-mail: <input type="text" name="email"><br> 
<input type="submit"> 
</form> 

</body> 
</html> 

В submit.php у меня есть:

<html> 
<body> 

Welcome <?php echo $_POST["name"]; ?><br> 
Your email address is: <?php echo $_POST["email"]; ?> 

</body> 
</html> 

Когда я открываю HTML файл в chrome и заполнить пробелы и нажать submit, я перенаправляюсь на страницу с кодом в submit.php:

<html> 
<body> 
Welcome <?php echo $_POST["name"]; ?><br> 
Your email address is: <?php echo $_POST["email"]; ?> 
</body> 
</html> 

я должен получать этот вывод:

Welcome Hannah 
Your email address is [email protected] 

Что я делаю не так, что выход не работает? Спасибо!

+2

Кажется, что у вас нет установленного веб-сервера ... –

+0

Какой выход вы получаете? Или вы вообще ничего не получаете? – randomusername

+0

Сторона примечания, когда вы ее заработаете. По соображениям безопасности вы должны использовать [htmlspecialchars] (http://php.net/manual/function.htmlspecialchars.php) при выводе пользовательского ввода. Проверьте ответ [здесь] (http://stackoverflow.com/questions/129677/whats-the-best-method-for-sanitizing-user-input-with-php). –

ответ

2

PHP обрабатывается на сервере, поэтому вы не можете рассматривать его как HTML, его необходимо разместить на сервере с установленным Apache. Вы можете установить один на своем компьютере, используя что-то вроде следующего:

+0

Итак, как мне пойти на установку сервера, чтобы это сработало? Вероятно, это глупый вопрос, но у меня действительно нет фона! Благодарю. – user2994585

+0

@ user2994585 какая ОС вы работаете, Mac, Windows, Linux? –

+0

Я использую Mac – user2994585

1

Похоже, вы делаете это с помощью файлов на рабочем столе а не через веб-сервер. Либо в Интернете, либо через локальную машину. Я взял ваш пример на 100%, как он был представлен, разместил его в моей папке htdocs в MAMP (LAMP для Macintosh), и он ведет себя на 100%, как ожидалось.

Разница между загрузкой файлов на рабочем столе и веб-сервером - это веб-сервер, обрабатывающий PHP. Если вы просто делаете это как файлы, то файл загружается & не получает синтаксический анализ.

+0

Возможно, он хранится в Chrome. Я не использую Chrome, потому что он слишком хорошо кэширует контент и мешает веб-разработке. Я рекомендую вам открыть один и тот же URL-адрес MAMP «localhost: 8888» в другом браузере или очистить кэш в Chrome и перезагрузить страницу. – JakeGould

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