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> 
+0

加上'的print_r($ _ POST);'到accountStatusChange.php – 2013-05-06 20:41:01

+0

的顶部,你可以给我们呈现的HTML(查看源代码)。如果你把死('这里'),会发生什么?在accountStatusChange.php的最顶端 – 2013-05-06 20:41:03

+0

@Steve一般来说,您可以使用apache日志来调试PHP错误。它应该告诉你错误的文件名和行号。 – Jeff 2013-05-06 20:44:13

首先,让您的生活更轻松,尝试更改您的代码:

<?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> 

  1. 你上传了两个文件到服务器?
  2. 这两个文件都在同一个目录中吗?
  3. 您不需要使用如此多的回声语句;尽管你的代码没有问题。
  4. 尝试使用$_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>