为什么我的表格不断重复?好像php没有运行

时间:2013-06-24 17:41:50

标签: php html

我有一个名为form.php的文件,当我上传到我的服务器,支持php时,表单不断重复,永远不会执行php代码。我是在http://davidjahn.info/DavidJahnNet/form.php

上传的
 <?php
 $age=$_POST["age"];
 echo $age;
 ?>

 <html>
    <head>
        <title>Survey</title>
        <style type="text/css">
            .welcome {
                color: #FFFFFF;
                text-align: center;
                background-color:red;
                font-weight:bold;
                height: 50px;
            }
        </style>
    </head>
    <body>
        <table style="height: 232px; width: 500px">
            <form method="post" id="survey" action="form.php">
                <tr>
                    <td>
                        <div class="welcome"><br>Welcome!</div>
                    </td>
                </tr>
                <tr>
                    <td>
                        <ul>
                            <br>
                            <br>
                            <div id="question1" style="display: inline;">
                                <h3>
                                    Are You 30+ Years Old?
                                </h3>
                                <div style="height: 10px"></div>
                                <input type="button" name="age" value="Yes" onclick="document.getElementById('question1').style.display='none';document.getElementById('question2').style.display='inline';">
                                <input type="button" name="age" value="No" onclick="document.getElementById('question1').style.display='none';document.getElementById('question2').style.display='inline';">
                            </div>
                            <div id="question2" style="display: none;">
                                <h3>
                                    Are You Looking for a Date?
                                </h3>
                                <div style="height: 10px"></div>
                                <input type="button" name="date" value="Yes" onclick="document.getElementById('question2').style.display='none';document.getElementById('question3').style.display='inline';">
                                <input type="button" name="date" value="No" onclick="document.getElementById('question2').style.display='none';document.getElementById('question3').style.display='inline';">
                            </div>
                            <div id="question3" style="display: none;">
                                <h3>
                                    Which Girl Is Your Type?
                                </h3>
                                <div style="height: 10px"></div>
                                <input type="image" src="http://healthystartups.com/storage/600px-MA_Route_1.png?__SQUARESPACE_CACHEVERSION=1319542839834" alt="Submit" width="100px" value="type1" />
                                <input type="image" src="http://jenntgrace.com/wp-content/uploads/2012/12/2.png" alt="Submit" width="100px" value="type2" />
                                <input type="image" src="http://3.bp.blogspot.com/-Q_owQUxNjdQ/Te3ALCmT3oI/AAAAAAAAAnk/wv9r0b0MT-g/s1600/600px-MA_Route_3.svg_.jpg" alt="Submit" width="100px" value="type3" />
                                <input type="image" src="http://4.bp.blogspot.com/-wY_qFr2pcAs/UCxhAayJ6oI/AAAAAAAAC6w/PgtLs2O_4g8/s1600/4.png" alt="Submit" width="100px" value="type4" />
                            </div>
                        </ul>
                    </td>
                </tr>
            </form>
        </table>
    </body>
 </html>

6 个答案:

答案 0 :(得分:7)

PHP是一种服务器端语言。您需要一台运行PHP的服务器来编写PHP页面。您不能简单地保存它们并在浏览器中打开它们。

查看类似XAMPP的内容,它可以让您在开发环境中快速启动并运行。

答案 1 :(得分:1)

您是否在localhost上测试了这个?我认为你没有安装WAMP,你试图查看.php文件没有PHP服务器&amp;你必须知道php是服务器端语言。安装EasyPHP然后你就可以运行.php

http://www.easyphp.org/

答案 2 :(得分:1)

您应该使用按钮进行提交。我已编辑您的代码以执行以下操作:

  • 具有四种类型的封面图像的按钮
  • 代表年龄,日期的隐藏值

代码:

<?php
    if (isset($_POST['age'])) {
        $age=$_POST["age"];
        echo $age;
    }
?>
<html>
   <head>
      <title>Survey</title>
      <style type="text/css">
         .welcome {
             color: #FFFFFF;
             text-align: center;
             background-color:red;
             font-weight:bold;
             height: 50px;
         }
         .type1 {
             background-image: url(http://healthystartups.com/storage/600px-MA_Route_1.png?__SQUARESPACE_CACHEVERSION=1319542839834); 
         }
         .type2 {
             background-image: url(http://jenntgrace.com/wp-content/uploads/2012/12/2.png);
         }
         .type3 {
             background-image: url(http://3.bp.blogspot.com/-Q_owQUxNjdQ/Te3ALCmT3oI/AAAAAAAAAnk/wv9r0b0MT-g/s1600/600px-MA_Route_3.svg_.jpg);
         }
         .type4 {
             background-image: url(http://4.bp.blogspot.com/-wY_qFr2pcAs/UCxhAayJ6oI/AAAAAAAAC6w/PgtLs2O_4g8/s1600/4.png);
         }
         input[type=submit]{
             border: none;
             width: 100px;
             height: 100px;
             background-size:cover;
         }
      </style>
   </head>
   <body>
      <table style="height: 232px; width: 500px">
         <form method="post" id="survey" action="form.php">
            <input type="hidden" name="age" id="age">
            <input type="hidden" name="date" id="date">
            <tr>
               <td>
                  <div class="welcome"><br>Welcome!</div>
               </td>
            </tr>
            <tr>
               <td>
                  <ul>
                     <br>
                     <br>
                     <div id="question1" style="display: inline;">
                        <h3>
                           Are You 30+ Years Old?
                        </h3>
                        <div style="height: 10px"></div>
                        <input type="button" value="Yes" onclick="document.getElementById('question1').style.display='none';document.getElementById('question2').style.display='inline';document.getElementById('age').value='Yes'">
                        <input type="button" value="No" onclick="document.getElementById('question1').style.display='none';document.getElementById('question2').style.display='inline';document.getElementById('age').value='No'">
                     </div>
                     <div id="question2" style="display: none;">
                        <h3>
                           Are You Looking for a Date?
                        </h3>
                        <div style="height: 10px"></div>
                        <input type="button" value="Yes" onclick="document.getElementById('question2').style.display='none';document.getElementById('question3').style.display='inline';document.getElementById('date').value='Yes'">
                        <input type="button" name="date" value="No" onclick="document.getElementById('question2').style.display='none';document.getElementById('question3').style.display='inline';document.getElementById('date').value='No'">
                     </div>
                     <div id="question3" style="display: none;">
                        <h3>
                           Which Girl Is Your Type?
                        </h3>
                        <div style="height: 10px"></div>
                        <input type="submit" value="1" class="type1" name="type" />
                        <input type="submit" value="2" class="type2" name="type" />
                        <input type="submit" value="3" class="type3" name="type" />
                        <input type="submit" value="4" class="type4" name="type" />
                     </div>
                  </ul>
               </td>
            </tr>
         </form>
      </table>
   </body>
</html>

答案 3 :(得分:0)

确保您在localhost服务器上运行代码,因为 PHP 仅适用于服务器端而非客户端。
如果您正确运行它,请使用此方法进行更好的练习:

if(isset($_POST['age'])){
$age=$_POST["age"];
 echo $age;
}

答案 4 :(得分:0)

如果您正在寻找年龄字段,那么您的Javascript和HTML没有多大意义。

您拥有的age元素是两个按钮。

您可以使用<input type="hidden" name="age" value="">解决此问题,然后在用户点击按钮时使用Javascript修改此值(如果这样做,请更改按钮的名称属性)。

或者您可以通过用单选按钮替换按钮来解决它。

只需替换<input type="button" name="age" ...
<input type="radio" name="age" ...>

答案 5 :(得分:-3)

我不确定你想说什么。你能详细说明一下吗?

另一方面,通过粗略猜测,它可能是您的浏览器。尝试添加

<!DOCTYPE html>

以上

<html>

编辑:如果您正在谈论PHP打印而不是做它的意图。好吧,只是为了让您知道,PHP是一种服务器端脚本语言。它需要通过PHP引擎进行处理。您是在共享的Web主机上还是设置了自己的服务器?