我正在编写这段代码,一切似乎都没问题。但是当我开始测试这个脚本时,它会给出一个空白页面。所以我无法看出错误是什么。
我不知道它可能是什么。我怀疑它与脚本中的更新部分有关。请看一下。 谢谢。
<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 <?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>
答案 0 :(得分:1)
问题出在这一行:
<h2>Question <?php echo $_GET{'question']; ?>
你在$_GET
中使用大括号而不是方括号,它应该是:
<h2>Question <?php echo $_GET['question']; ?>
$question
也未在您的脚本中定义,因此会产生更多错误。
答案 1 :(得分:0)
你有什么问题吗?看起来内容只显示$ question == 1 || 2。
如果您设置了$ question并且仍然有空白页...
您可能在PHP中遇到致命错误而没有看到错误。
在打开之后立即将其添加到代码顶部
ini_set('display_errors',1);
error_reporting(E_ALL);
这应该会显示以前无法看到的任何错误。