为初学者提供Php指导

时间:2012-06-07 04:26:45

标签: php

我刚开始学习PHP。我发现$ _POST变量不起作用,并在下面的链接中发布了相同的

$_POST[] not working in php

根据建议我安装了XAMPP。但仍然没有解决$ _POST变量的问题。

现在我怀疑是否需要配置任何全局变量以使$ _POST正常工作。我完全迷失了,不知道如何继续。

对此的任何帮助都非常赞赏。

以下是html代码 - report.html

<html>
<title></title
<head></head>
<body>
        <form action="report.php" method="POST" >
<label for="firstname">First name:</label>
<input type="text" id="firstname" name="firstname" value="TestOnly" /><br />
</form>
</body>
</html>

以下是php代码 - report.php

<html>
<head>

</head>
<body>

<?php
     print( $_POST['firstname']); 

?>
</body>
</html>  

以下是我从chrome网络数据

获得的视图

enter image description here 感谢。

5 个答案:

答案 0 :(得分:1)

看,试试这个。

index.htm文件来源:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <title>POST</title>
    </head>

    <body>
        <form method="post" action="post.php">
            <input type="text" name="name" />
            <input type="submit" name="submit" value="submit">
        </form>
    </body>
</html>

来源post.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
    <title>Output</title>
</head>
<body>
    <?php
        if(isset($_POST["name"]))
            echo "You have posted " . $_POST["name"];
        else
            echo "Nothing has been set!";
    ?>
</body>
</html>

现在尝试将这两个文件保存在同一目录下。在文本框中输入内容,然后单击“提交”。让我们知道你有什么。

答案 1 :(得分:0)

你有没有试过你的php是否正确?

<?php
    phpinfo();
?>

<?php
    print_r($_POST);
?>

答案 2 :(得分:0)

要检查的一些事项:

  • 除非已将表单提交(已发布)到该脚本,否则您的脚本将在POST数组中没有数据。
  • 如果您有一个脚本并且正确提交,请确保该表单在其开始标记中包含method =“Post”。如果您的表单提交并在结果脚本中,您会在地址栏中看到由&符号(&amp;)分隔的一堆变量,然后它使用GET而不是POST。确保在表单标记中包含上述语句method =“Post”。
  • 如果您已经提交了脚本但仍然看不到任何内容,请尝试将print_r($ _ POST)或var_dump($ _ POST)放在目标脚本的顶部,以查看$ _POST数组的转储。如果这没有给你什么,请尝试var_dump($ _ REQUEST)并查看表单数据是否显示在那里。

答案 3 :(得分:0)

你的代码是什么?默认情况下,$ _POST设置在每个服务器中都处于活动状态,除非服务器因安全原因忽略发布的数据。我认为你的错误在你的代码中, 不改变XAMP设置

答案 4 :(得分:0)

  1. 不更改php的设置
  2. 要么在html文件中使用get方法,要使用post in action文件,你应该使用post。