PHP表单不执行
问题描述:
我是PHP新手,遇到用户表单时遇到问题。代码执行并生成一个包含选择框和提交按钮的页面。提交按钮应该提示一个新的php文件。但是,新PHP文件中的代码未被执行。我只是得到一个空白的网页。PHP表单不执行
<?php
include 'Connection.php';
echo "<form action=\"accountStatusChange.php\" method=\"post\">";
echo "<br/>";
echo "<select name=\"accountStatus\">";
echo "<option value=\"Active\">Active</option>";
echo "<option value=\"Inactive\">Inactive</option>";
echo "</select>";
echo "<input type=\"submit\" name=\"loadAccountStatus\" value=\"Go\"/>";
echo "</form>";
?>
这是文件accountStatusChange.php:
<html><body>
<?php
$status = $_POST['accountStatus'];
echo $status;
?>
</body></html>
答
首先,让您的生活更轻松,尝试更改您的代码:
<?php
include 'Connection.php';
echo '
<form action="accountStatusChange.php" method="post">
<br/>
<select name="accountStatus">
<option value="Active">Active</option>
<option value="Inactive">Inactive</option>
</select>
<input type="submit" name="loadAccountStatus" value="Go"/>
</form>
';
?>
然后在第二个文件:
<html><body>
<?php
if(isset($_POST['accountStatus'])){
$status = $_POST['accountStatus'];
echo $status;
}else{
echo 'form not submitted';
}
?>
</body></html>
答
- 你上传了两个文件到服务器?
- 这两个文件都在同一个目录中吗?
- 您不需要使用如此多的回声语句;尽管你的代码没有问题。
-
尝试使用
$_REQUEST
;像这样:$status = $_REQUEST['accountStatus'];
<?php
include 'Connection.php';
?>
<form action="accountStatusChange.php" method="post">
<br/>
<select name="accountStatus">
<option value="Active">Active</option>
<option value="Inactive">Inactive</option>
</select>
<input type="submit" name="loadAccountStatus" value="Go"/>
</form>
加上'的print_r($ _ POST);'到accountStatusChange.php – 2013-05-06 20:41:01
的顶部,你可以给我们呈现的HTML(查看源代码)。如果你把死('这里'),会发生什么?在accountStatusChange.php的最顶端 – 2013-05-06 20:41:03
@Steve一般来说,您可以使用apache日志来调试PHP错误。它应该告诉你错误的文件名和行号。 – Jeff 2013-05-06 20:44:13