添加CCS样式,这取决于mysqli_fetch_array中的php IF语句

时间:2017-06-08 08:41:49

标签: php css mysqli

我想添加依赖于php IF语句的CCS样式。我找到了一些东西:changing the style inside "if" statement,但不知何故它不起作用,可能是因为我的代码中有WHILE语句。

<?php
$possible_lang_list = mysqli_query($con, 
'SELECT * FROM page WHERE title = "lang" ORDER BY name1 ASC');

while ($row = mysqli_fetch_array($possible_lang_list)) {
  echo '
      <div class="language" id="' . $row['name2'] . '">
      <p>' . $row['name1'] . '</p>
      </div>
  ';
}
?>

我想只显示div class =&#34;语言&#34;其中$ row [&#39; name2&#39;] == $ x,可以显示整个班级&#34;语言&#34;用JavaScript。有人可以帮忙吗?

我试过了:

 while ($row = mysqli_fetch_array($possible_lang_list)) {
  if ($row['name2'] == $x) {
  ?>
  <div style="display:block;">
  <?php } else {
  ?>
  <div style="display:none;">
  <?php
  echo '
      <div class="" id="' . $row['name2'] . '">
        <p>' . $row['name1'] . '</p>

      </div>
  </div>';
  }
}

3 个答案:

答案 0 :(得分:0)

为style元素指定一个true / false三元组,如下所示。然后输出它!

<?php

while ($row = mysqli_fetch_array($possible_lang_list)) {
  $class = ($row['name2'] == $x) ? 'language' : null;
  echo '
      <div class="'.$class.'" id="' . $row['name2'] . '">
      <p>' . $row['name1'] . '</p>
      </div>
  ';
}

然后:

答案 1 :(得分:0)

现在它正在运作:

while ($row = mysqli_fetch_array($possible_lang_list)) {
  if ($row['name2'] == $x) {
  ?>
  <div style="display:block;">
  <?php } else {
  ?>
  <div style="display:none;">
  <?php   }
  echo '
      <div class="" id="' . $row['name2'] . '">
        <p>' . $row['name1'] . '</p>

      </div>
  </div>';

}

答案 2 :(得分:0)

试试这段代码:

while ($row = mysqli_fetch_array($possible_lang_list)) 
{
  if($row['name2'] == $x)
  { 
     echo '<div class="language" id="' . $row['name2'] . '"><p>' . $row['name1'] . '</p>
  </div>';
  }
  else
  {
    echo '<div class="" id="' . $row['name2'] . '"><p>' . $row['name1'] . '</p>
  </div>';
  }

}

希望它能运作