php:在打印输出之前更改sql表的输出

lb3vh1jj  于 2021-06-21  发布在  Mysql
关注(0)|答案(3)|浏览(306)

我有个初学者的问题。我有下面的代码来访问一个sql表,但是在我打印它(什么工作)之前,我想检查表中的“zustand”是0还是1,函数应该只将打印更改为f.e.1=good 0=bad。这是可能的还是必须更改sql表?

$conn = new mysqli($servername, $username, $password, $dbname);
  // Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT Nr, Name, Zustand FROM Verbraucher";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    echo "<table><tr><th>Nr</th><th>Name</th><th>Zustand</th></tr>";
    // output data of each row
    while($row = $result->fetch_assoc()) {

        echo "<tr><td>" . $row["Nr"]. "</td><td>" . $row["Name"]. "</td><td>" . $row["Zustand"]. "</td></tr>";
    }
    echo "</table>";
} else {
    echo "0 results";
}

$conn->close();
?>
uyto3xhc

uyto3xhc1#

比较简单,只需更换

. $row["Zustand"] .

具有

. ($row["Zustand"] == 1 ? "good" : "bad") .

符号是什么?and:是if/else语句的简写

qlvxas9a

qlvxas9a2#

是的,有可能,
内部 while 循环,添加 if 块如下所示,

if($row["Zustand"]==1)
 echo "<tr><td>" . $row["Nr"]. "</td><td>" . $row["Name"]. "</td><td>" ."good". "</td></tr>";
else
  echo "<tr><td>" . $row["Nr"]. "</td><td>" . $row["Name"]. "</td><td>" . "bad". "</td></tr>";
5lhxktic

5lhxktic3#

您可以更改查询并使用此查询:

SELECT Nr, Name, IF(Zustand = 0, "bad", "good") AS Zustand FROM Verbraucher

相关问题