根据SQL值更改CSS

时间:2019-02-27 11:58:50

标签: javascript php jquery html mysql

我对php和jquery还是陌生的,我正在尝试创建一个网页,该网页根据Mysql服务器中的数据显示玩家及其状态。

基本代码有效,尽管该代码是从多个youtube教程中抓取的:)

我想更改状态为或变为0(死)的玩家行的不透明度。

这是我到目前为止的代码:

pagetest.php:

<!DOCTYPE html>
<html>
<head>
  <title>pagetest</title>
</head>
<body>
  <table id="show">
  <tr>
    <td>player</td>
    <td>status</td>
  </tr>
  </table>
  <script type="text/javascript" src="../jquery.js"></script>
  <script type="text/javascript">
    $(document).ready(function() {
      setInterval(function() {
        $('#show').load('test.php')
      }, 3000);
    });
  </script>
</body>
</html>

test.php:

<!DOCTYPE html>
<html>
<head>
<title>test</title>
</head>
<body>
  <?php

  $conn = mysqli_connect("myserver", "myuser", "mypass", "mydb");
  if ($conn-> connect_error) {
    die("Connection failed:". $conn->connect_error);
  }

  $sql = "SELECT player, status FROM mytable";
  $result = $conn->query($sql);

  if ($result-> num_rows > 0) {
    while ($row = $result->fetch_assoc()){
      echo "<tr><td>" . $row["player"] . "</td><td>" . $row["status"] . "</td></tr>";
    }
    echo "</table>";
  }
  else {
    echo "No game data available";
  }
  ?>
</body>
</html>

非常感谢您的帮助:)

2 个答案:

答案 0 :(得分:0)

您可以执行以下操作:

echo '<tr class="player-status-'.$row["status"].'"><td>'. $row["player"] .'</td><td>' . $row["status"] . '</td></tr>';

根据tr在行$row["status"]中添加一个类,以使您呈现以下内容:<tr class="player-status-0"><td>cristiano ronaldo</td><td>0</td></tr>

这样,您可以使用CSS为此类创建样式

.player-status-0 {
  opacity: 
}

顺便说一句,考虑过使用ajax并返回带有数据的json吗?

答案 1 :(得分:0)

有什么理由要使用jQuery吗?如果否,那么您可以使用以下代码:

<body>
 <?php
  $conn = mysqli_connect("host", "user", "password", "database");
  if ($conn-> connect_error) {
    die("Connection failed:". $conn->connect_error);
  }

  $sql = "SELECT player, status FROM mytable";
  $result = $conn->query($sql);

  if ($result-> num_rows > 0) {
   echo '<table id="show">
        <tr>
          <td>player</td>
          <td>status</td>
        </tr>';
while ($row = $result->fetch_assoc()){
  $status = $row["status"];
  $player = $row["player"];
  echo "<tr style='" . ($status == 0 ? 'opacity: 0;' : '') . "'><td>" . $player . "</td><td>" . $status . "</td></tr>";
}
echo '</table>';
 }
else {
  echo "No game data available";
}
  ?>
</body>