我为我正在制作的游戏制作了一个WHILE循环,如下所示:如果声明已更新
if ($switch == 0){
echo '<a href="/index.php">Exit Voting Booth - You May Vote Again Later</a></br>';
echo '<div role="main" id="main"><div class="wrapper">';
echo '<h3>Ballot Questions:</h3></br>';
$query = "SELECT * FROM ballot_questions";
$ballots = mysql_query($query,$link) or die("Unable to select: ".mysql_error());
$x = 1;
//echo $x;
while($row = mysql_fetch_array($ballots))
{
echo '<h4>'.$row['question'].'<form action="vote_engine.php" method="post">
<input type="hidden" name="id" value= "',$id,'">
Yes:<input type="radio" value="yes" name = "',$x,'">
No:<input type="radio" value="no" name = "',$x,'"></h4></br>';
$x++;
//echo $x;
}
echo '<p><input type="submit" value="submit" name="submit">
</form></p>';
}
在浏览器中显示如下:
测试选票问题1
是否
测试选票问题2是否
测试选票问题3是否
测试选票问题4是否
第一行总是显示为有/ br标记。其余的出现在我想要的地方。
这是html输出:
Exit Voting Booth - You May Vote Again Later
选票问题:
测试选票问题#1是:否:测试选票问题#2是:否:测试选票问题#3是:否:测试选票问题# 4Yes:否:
有什么想法吗?感谢
答案 0 :(得分:0)
这根本不会产生有效的HTML。谁知道浏览器将如何尝试呈现此页面。
我看到的两件事:
<br>
代码不正确。 您可以使用以下代码修复这些代码:
<?php
if ($switch == 0) {
echo '<a href="/index.php">Exit Voting Booth - You May Vote Again Later</a></br>';
echo '<div role="main" id="main"><div class="wrapper">';
echo '<h3>Ballot Questions:</h3><br />'; ; // This was </br>
$query = "SELECT * FROM ballot_questions";
$ballots = mysql_query($query, $link) or die("Unable to select: " . mysql_error());
$x = 1;
echo '<form action="vote_engine.php" method="post">'; // This will create ONE form
while ($row = mysql_fetch_array($ballots)) {
echo '<h4>' . $row['question'] . '<input type="hidden" name="id" value= "', $id, '">
Yes:<input type="radio" value="yes" name = "', $x, '">
No:<input type="radio" value="no" name = "', $x, '">
</h4>
<br />'; // This was </br>
$x++;
}
echo '<p><input type="submit" value="submit" name="submit"></p></form>'; // Switch </p> and </form> tags
}
?>