2012-04-07 51 views
3

好的...我创建了一个form.html页面。它要求用户输入6个文本字段。表单POST到一个名为myform.php的单独页面。 myform.php页面只是返回用户输入的值。但是,当我点击提交时,我只是在屏幕上弹出myform.php源代码。HTML表单POST到PHP页面

<div class="content"> 
     <form action="myform.php" method="post"> 
      Name: <input name="name" type="text" size="25" /> 
      Course: <input name="course" type="text" size="25" /> 
      Book: <input name="book" type="text" size="255" /> 
      Price: <input name="price" type="text" size="7" /> 
      Email: <input name="email" type="text" size="255" /> 
      Phone #: <input name="phone" type="text" size="12" /> 

      <input name="mySubmit" type="submit" value="submit" /> 
     </form> 
    </div> 

<?php 
$name = $_POST["name"]; 
$course = $_POST["course"]; 
$book = $_POST["book"]; 
$price = $_POST["price"]; 
$email = $_POST["email"]; 
$phone = $_POST["phone"]; 

?> 
</head> 

<body> 
<?php 
    echo $name; 
    ?> 
</body> 
+0

你安装并启用PHP到你的Web服务器? – kappa 2012-04-07 19:46:00

+1

这段代码是在PHP运行的地方吗? – mikevoermans 2012-04-07 19:46:03

+1

没关系......我在xampp的错误方向页面:S – kyros 2012-04-07 19:48:57

回答

2

你最大的问题是在你的第一句话

确定...我创建了一个页面form.html

要在服务器上运行PHP代码,你需要重命名文件form.php,除非你已经在你的代码示例中组合了这两个文件....

+0

您错过了这一点。他的php表单处理程序没有执行。他的form.html页面是一个单独的文件,是无关紧要的。 – 2015-09-08 16:23:15

6

Marc Towler是正确的。您需要首先解析PHP代码的PHP扩展页面。但我实际上建议你将表单的页面和表单处理分开。我建议如下:

myform.php:

<!DOCTYPE html> 
<html> 
<head></head> 
<body> 
<div class="content"> 
    <form action="formprocessor.php" method="POST"> 
     <label>Name: </label> 
     <input name="name" type="text" size="25" /> 

     <label>Course: </label> 
     <input name="course" type="text" size="25" /> 

     <label>Book: </label> 
     <input name="book" type="text" size="255" /> 

     <label>Price: </label> 
     <input name="price" type="text" size="7" /> 

     <label>Email: </label> 
     <input name="email" type="text" size="255" /> 

     <label>Phone #: </label> 
     <input name="phone" type="text" size="12" /> 

     <input name="mySubmit" type="submit" value="Submit!" /> 
    </form> 
</div> 
</body> 
</html> 

formprocessor.php:

<?php 
$name = $_POST["name"]; 
$course = $_POST["course"]; 
$book = $_POST["book"]; 
$price = $_POST["price"]; 
$email = $_POST["email"]; 
$phone = $_POST["phone"]; 

echo $name; 
?> 
+0

does not the action =“”需要指向新的formprocessor.php? – Erik 2014-01-09 23:05:56

+0

好找Eric,我会改变的! – cereallarceny 2014-01-10 14:42:29