当正确输入军用号码时,下面的代码显示来自数据库的数据,这是一件好事。但不好的事情,显然我遇到的问题是它显示空白页面,当它是空的或军事号码不正确时。假设回复那里没有找到军事号码的else语句。我无法知道这里有什么问题。
//The html code
<form method="post" action="dutydata.php">
<input type="text" placeholder="provide unique code">
<input type="submit" name="verify">
</form>
//the php code
<?php
$conn = mysqli_connect("localhost", "root", "", "army_duty");
$set = $_POST['verify'];
if($set) {
$show = "SELECT * FROM profile where military_number = '$set' ";
$result = mysqli_query($conn, $show);
while ($row = mysqli_fetch_array(result)) {
echo $row['military_number'];
echo $row['first_name'];
echo $row['last_name'];
echo $row['paygrade'];
echo $row['duty_status'];
echo $row['photo'];
echo "<br/>";
}
}
else {
echo "Military Number not found";
}
?>
答案 0 :(得分:0)
我发现了一些错误,首先文本输入必须在第2行有一个名字。 接下来检查第8行是否设置(或点击)按钮,然后在第2行的第2行输入的文本输入中创建变量。在你的while循环中,你留下$ for result。
<form method="post" action="dutydata.php">
<input name="something" type="text" placeholder="provide unique code">
<input type="submit" name="verify">
</form>
//the php code
<?php
$conn = mysqli_connect("localhost", "root", "", "army_duty");
if(isset($_POST['verify'])) {
$set = $_POST['something'];
$show = "SELECT * FROM profile WHERE military_number = '$set' ";
$result = mysqli_query($conn, $show);
while ($row = mysqli_fetch_array($result)) {
echo $row['military_number'];
echo $row['first_name'];
echo $row['last_name'];
echo $row['paygrade'];
echo $row['duty_status'];
echo $row['photo'];
echo "<br/>";
}
} else {echo "Military Number not found";}
?>
答案 1 :(得分:0)
您if
声明不正确。使用if
语句,您正在检查是否有任何值在可变$ set中。它是什么,无论该值是否是有效的军事数字。因此它始终验证TRUE并且不会触发else
语句。
有关if
语句的详细信息,请阅读http://php.net/manual/en/control-structures.if.php。
答案 2 :(得分:0)
此代码中存在一些基本错误。包括我们使用提交按钮检查isset upin提交的事实。它不包含值。你打算做什么,将$ set设置为我所谓的“unique_code”。
以下代码应足以用于测试解决方案。
// html代码
//Remember if your form is on the same page as your PHP, you can set action to ""
<form method="post" action="dutydata.php">
<input type="text" placeholder="provide unique code" name="unique_code">
<input type="submit" name="verify">
</form>
// php代码
<?php
$conn = mysqli_connect("localhost", "root", "", "army_duty");
$set = $_POST['unique_code'];
if(isset($set)) {
$show = "SELECT * FROM profile WHERE military_number = '{$set}' ";
$result = mysqli_query($conn, $show);
while ($row = mysqli_fetch_assoc($result)) {
echo $row['military_number'];
echo $row['first_name'];
echo $row['last_name'];
echo $row['paygrade'];
echo $row['duty_status'];
echo $row['photo'];
echo "<br/>";
}
}
else {
echo "Military Number not found";
}
?>