PHP: изменить вывод таблицы SQL перед распечаткой - PullRequest
0 голосов
/ 10 июня 2018

У меня проблема новичка.У меня есть следующий код для доступа к таблице SQL, но прежде чем распечатать его (что работает), я хочу проверить, если «Zustand» в таблице 0 или 1, и функция должна изменить только вывод на fe 1 = good 0 =плохой.Это вообще возможно или мне нужно изменить таблицу 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();
?>

Ответы [ 3 ]

0 голосов
/ 10 июня 2018

Относительно просто, просто замените

. $row["Zustand"] .

на

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

обозначение на?и: является сокращением для утверждения if / else

0 голосов
/ 10 июня 2018

да, это возможно,

Внутри цикла 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>";
0 голосов
/ 10 июня 2018

Вы можете изменить свой запрос и использовать этот:

SELECT Nr, Name, IF(Zustand = 0, "bad", "good") AS Zustand FROM Verbraucher
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...