$ _POST超全球未通过(1and1)

时间:2011-03-20 02:19:37

标签: php superglobals

我刚刚创建了一个基本的表单页面,通过Aptana,WAMP,并通过一个基本的1and1托管页面,我无法让表单字段通过$ _POST超全局。

这是index.html页面:

<html>
<head>
    </head>
    <body>
        <p>Type in the areas</p>
    <form action="keywords.php" method="POST">
        <label for="Area1"> 1:</label>
        <input type="text" id="Area1" name="first area /"><br />
        <label for="Area1"> 2:</label>
        <input type="text" id="Area2" name="second area /"><br />
        <label for="Area1"> 3:</label>
        <input type="text" id="Area3" name="third area /"><br />
        <label for="Area1"> 4:</label>
        <input type="text" id="Area4" name="fourth area /"><br />
        <label for="Area1"> 5:</label>
        <input type="text" id="Area5" name="fifth area /"><br />
        <label for="Area1"> 6:</label>
        <input type="text" id="Area6" name="sixth area /"><br />
        <label for="Area1"> 7:</label>
        <input type="text" id="Area7" name="seventh area /"><br />
        <label for="Area1"> 8:</label>
        <input type="text" id="Area8" name="eighth area /"><br />
            <input type="submit" value="Run" name="Run">
            </form>
    </body>
</html>
?>

传递给keywords.php

<?php

 if(isset($_POST['submit'])){
     echo "test";


    $area1 = $_POST['Area1'];
    $area2 = $_POST['Area2'];
    $area3 = $_POST['Area3'];
    $area4 = $_POST['Area4'];
    $area5 = $_POST['Area5'];
    $area6 = $_POST['Area6'];
    $area7 = $_POST['Area7'];
    $area8 = $_POST['Area8'];


    echo $area1;
 }
 ?>
亲爱的主啊,我做错了什么。要温柔。 PHP 5.3.4

3 个答案:

答案 0 :(得分:2)

根据名称将变量插入$_POST。所以它会是$_POST['first area']

另外,我不知道复制是否错误,但名称中应该没有斜线......它们应该在引号之外。例如:

<input type="text" id="Area1" name="first area" /><br />

答案 1 :(得分:2)

错误,在您的PHP代码中,您指的是您在HTML id属性中给出的值,而不是表单元素的name属性。浏览器将name属性作为表单元素的名称传递。试试$ _POST ['first area']等等:))

答案 2 :(得分:1)

您实际上可以将所有输入作为一个数组传递。

这是一个例子。

<html>
<head>
    </head>
    <body>
        <p>Type in the areas</p>
    <form action="keywords.php" method="POST">
        <label for="Area1"> 1:</label>
        <input type="text" id="Area1" name="area[]"><br />
        <label for="Area1"> 2:</label>
        <input type="text" id="Area2" name="area[]"><br />
        <label for="Area1"> 3:</label>
        <input type="text" id="Area3" name="area[]"><br />
        <label for="Area1"> 4:</label>
        <input type="text" id="Area4" name="area[]"><br />
        <label for="Area1"> 5:</label>
        <input type="text" id="Area5" name="area[]"><br />
        <label for="Area1"> 6:</label>
        <input type="text" id="Area6" name="area[]"><br />
        <label for="Area1"> 7:</label>
        <input type="text" id="Area7" name="area[]"><br />
        <label for="Area1"> 8:</label>
        <input type="text" id="Area8" name="area[]"><br />
            <input type="submit" value="Run" name="Run">
            </form>
    </body>
</html>

会得到一个变量:$_POST['area']这个变量是一个8值数组,然后你可以迭代。