php随机空白页面

时间:2014-06-29 15:17:22

标签: php mysqli

我正在编写这段代码,一切似乎都没问题。但是当我开始测试这个脚本时,它会给出一个空白页面。所以我无法看出错误是什么。

我不知道它可能是什么。我怀疑它与脚本中的更新部分有关。请看一下。 谢谢。

<html>
<head>  
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
<title>History test</title>
<link rel="stylesheet" href="style.css" type="text/css" />
</head>  
<body>  
<div id="main">
<?php
if($question=='1')
{
?>
<h2>Question&nbsp;<?php echo $_GET{'question']; ?>
Is Africa hotter and dried than 12.000 years ago?
<hr>
Answer 1: Yes
Answer 2: Depends
Answer 3: No
<form action="" method="GET">
<input type="hidden" value="1" name="answer">
<input type="hidden" value="2" name="question">
<input type="hidden" value="<?php echo $_GET['name']; ?>" name="name">
<input type="hidden" value="<?php echo $_GET['studentid']; ?>" name="studentid">
<input type="submit" value="Answer 1">
</form><p>
<form action="" method="GET">
<input type="hidden" value="1" name="answer">
<input type="hidden" value="2" name="question">
<input type="hidden" value="<?php echo $_GET['name']; ?>" name="name">
<input type="hidden" value="<?php echo $_GET['studentid']; ?>" name="studentid">
<input type="submit" value="Answer 2">
</form><p>
<form action="" method="GET">
<input type="hidden" value="1" name="answer">
<input type="hidden" value="2" name="question">
<input type="hidden" value="<?php echo $_GET['name']; ?>" name="name">
<input type="hidden" value="<?php echo $_GET['studentid']; ?>" name="studentid">
<input type="submit" value="Answer 3">
</form><p>
<?php
}
if($question=='2')
{
$answer = $_GET['answer'];
$studentid = $_GET['studentid'];

   $db_handle = mysqli_connect("localhost", "username", "password", "db") or die("|-1");
      if($db_handle) 
            mysqli_query($db_handle, "UPDATE history SET question1 = '$answer' WHERE studentid = '$studentid';");
              mysqli_close($db_handle);
              ?>
              Hey
              <?php

}



?>

</div>
</body>
</html>

2 个答案:

答案 0 :(得分:1)

问题出在这一行:

<h2>Question&nbsp;<?php echo $_GET{'question']; ?>

你在$_GET中使用大括号而不是方括号,它应该是:

<h2>Question&nbsp;<?php echo $_GET['question']; ?>

$question也未在您的脚本中定义,因此会产生更多错误。

答案 1 :(得分:0)

你有什么问题吗?看起来内容只显示$ question == 1 || 2。

如果您设置了$ question并且仍然有空白页...

您可能在PHP中遇到致命错误而没有看到错误。

在打开之后立即将其添加到代码顶部

ini_set('display_errors',1);
error_reporting(E_ALL);

这应该会显示以前无法看到的任何错误。