根据从question
下拉菜单中选择的选项,下面有一个mysqli / php代码显示结果:
$selectedquestionqry = "
SELECT
QuestionNo
FROM
Question
WHERE
(QuestionId = ?)
";
global $mysqli;
$selectedquestionstmt=$mysqli->prepare($selectedquestionqry);
// You only need to call bind_param once
$selectedquestionstmt->bind_param("i",$_POST["question"]);
// get result and assign variables (prefix with db)
$selectedquestionstmt->execute();
$selectedquestionstmt->bind_result($selQuestionNo);
$selectedquestionstmt->store_result();
$selquestionnum = $selectedquestionstmt->num_rows();
while ($selectedquestionstmt->fetch()) {
if($_POST["question"] === '0') {
echo "<p>All Questions - Total:(" . $selquestionnum . ")</p>" . PHP_EOL;
}else if($_POST["question"] !== '0') {
echo "<p><strong>Questions: </strong>" . $selQuestionNo . "</p>" . PHP_EOL;
}
}
DROP DOWN MENU:
<select name="student" id="studentsDrop">
<option value="0">All</option>
<option value="23">Jay Hart</option>
<option value="32">Bubba Wright</option>
</select>
我的问题是如何才能获得它,以便如果用户选择了“0”,那么它将能够从question
下拉菜单中显示的数据库中选择所有问题?< / p>
我问这个的原因是因为在我的回声else if($_POST["question"] !== '0') {
echo "<p><strong>Questions: </strong>" . $selQuestionNo . "</p>" . PHP_EOL;
}
中,当我选择All
选项时没有任何回声,这让我觉得它没有显示回声由于这个。如果我从下拉菜单中选择一个问题,它就能输出它的回声。
答案 0 :(得分:2)
您只需要修改您的查询:
if($_POST["question"] === '0') {
$selectedquestionqry = "SELECT QuestionNo FROM Question";
} else {
$selectedquestionqry = "SELECT QuestionNo FROM Question WHERE (QuestionId = ?)";
}
答案 1 :(得分:0)
您需要更改查询以根据发布的值WHERE
删除'0'
条件。之后您不必更改任何代码,因为您已经在循环,但是您应该在循环外显示Total。