一般来说,PHP和Web开发的新手。我想在点击提交后从HTML表单中获取信息以显示在另一个网页的表格中。所以我在我的本地PC上安装了Apache然后安装了PHP,并希望能够在本地测试PHP脚本,但它不会返回我期望的信息。 以下是表单的代码:
<form method="post" action="showform.php">
Please fill out the following form if you would like to be contacted: <br/>
Name:<input type="text" name="name" /> <br/><br/>
Company: <input type="text" name="company"/> <br/><br/>
Phone: <input type="text" name="phone" /> <br/><br/>
Email: <input type="text" name="email" /> <br/><br/>
<input type="submit" name="Submit" value="Submit" />
</form>
以下是php脚本的代码:
<table>
<tr><th>Field Name</th><th>Value(s)</th></tr>
<?php
if (empty($_POST)) {
print "<p>No data was submitted.</p>";
} else {
foreach ($_POST as $key => $value) {
if (get_magic_quotes_gpc()) $value=stripslashes($value);
if ($key=='extras') {
if (is_array($_POST['extras']) ){
print "<tr><td><code>$key</code></td><td>";
foreach ($_POST['extras'] as $value) {
print "<i>$value</i><br />";
}
print "</td></tr>";
} else {
print "<tr><td><code>$key</code></td><td><i>$value</i></td></tr>\n";
}
} else {
print "<tr><td><code>$key</code></td><td><i>$value</i></td></tr>\n";
}
}
}
?>
</table>
</body>
</html>
我知道它在互联网上使用时有效,但它怎么会在本地不起作用。我已经检查过apache和php是否正确安装。可能是什么问题? 当前结果是一个表,其中$ key和$ value应该是正确值的位置,换句话说就是表格单元格。 谢谢你的帮助。
更新:现在通过WAMPSERVER工作 - 感谢所有帮助过的人!
答案 0 :(得分:7)
结帐xampp。它在您的计算机上安装Apache,Mysql,Perl和PHP,以便您可以在本地测试整个站点。这是一个单击安装程序,并配有一个漂亮的控制面板,以根据需要启用/禁用每项服务。
答案 1 :(得分:3)
您也可以尝试WampServer。
这是一个包含:Apache,MySQL,PHP(预先配置用于Windows)的软件包。
答案 2 :(得分:0)
如果你真的得到$value
,那么你的PHP脚本就不会被解析了。尝试运行基本的phpinfo()
来检查一下。
如果PHP没有选择,请确保在httpd.conf
中设置了PHP的路径。我建议使用xampp - 我在所有本地配置中都很糟糕,只是让自动安装程序为我设置它。我知道以后可以添加新的模块等。
答案 3 :(得分:0)
如果使用PHP 5.5+,则不需要服务器 - 它有一个内置服务器(http://www.php.net/manual/en/features.commandline.webserver.php)
只需使用:
$ cd~ / project
$ php -S localhost:8000
答案 4 :(得分:-2)
乍一看,看起来您正在尝试放置变量,但是您将变量放在字符串中。
所以这个:
print "<tr><td><code>$key</code></td><td><i>$value</i></td></tr>\n";
应该是这样的:
print "<tr><td><code>" . $key . "</code></td><td><i>" . $value . "</i></td></tr>\n";