如果stamment对数据库查询不起作用


if stamement not working against db query

我正在运行下面的代码,但无法使if语句工作。如果没有内容,我希望能够删除div,如果有,则显示它,但目前它要么在一个数据库条目为空时将其全部删除,而不是仅删除1个空行。

             <?php 
     $con = new mysqli($DBServer, $DBUser, $DBPass, $DBName);
     if (mysqli_connect_errno()) {
     echo "Failed to connect to MySQL: " . mysqli_connect_error();
     }
     extract($_GET);
     { $result = mysqli_query($con,"SELECT * FROM links ORDER by id ");
     while($row = mysqli_fetch_array($result)) {
     if ($section=""){
     echo"";
     }
     elseif ($section="a"){
     echo"<div class='"page-header'">" . $row['section'] . "'</div>";
     }

      echo "<div class='"links-wrap'">
         <div class='"links-box'">
         <div class='"links-image'"><img src='"images/links/" . $row['img1'] . "'"></div>
         <div class='"links-site-txt'">" . $row['link1'] . "</div>
         <div class='"links-desc'">" . $row['desc1'] . "</div>
         </div>
         <div class='"spacer-left'"></div>
         <div class='"links-box'"></div>
         <div class='"spacer-left'"></div>
         <div class='"links-box'"></div>
          </div>";}}
      mysqli_close($con);
       ?>  
<?php 
 $con = new mysqli($DBServer, $DBUser, $DBPass, $DBName);
 if (mysqli_connect_errno()) {
 echo "Failed to connect to MySQL: " . mysqli_connect_error();
 }
 extract($_GET);
 { $result = mysqli_query($con,"SELECT * FROM links ORDER by id ");
 while($row = mysqli_fetch_array($result)) {
 if ( $section == "" ){ //double equality for condition check
 echo "";
 }
 else if ($section == "a" ){
 echo"<div class='"page-header'">" . $row['section'] . "'</div>";
 }

  echo "<div class='"links-wrap'">
     <div class='"links-box'">
     <div class='"links-image'"><img src='"images/links/" . $row['img1'] . "'"></div>
     <div class='"links-site-txt'">" . $row['link1'] . "</div>
     <div class='"links-desc'">" . $row['desc1'] . "</div>
     </div>
     <div class='"spacer-left'"></div>
     <div class='"links-box'"></div>
     <div class='"spacer-left'"></div>
     <div class='"links-box'"></div>
      </div>";}}
  mysqli_close($con);
   ?>  

要通过ifelseif比较值,需要==而不是==通常用于为变量赋值。更改您的代码,如下所示。

$con = new mysqli($DBServer, $DBUser, $DBPass, $DBName);
if (mysqli_connect_errno()) {
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
extract($_GET);
$result = mysqli_query($con,"SELECT * FROM links ORDER by id ");
while($row = mysqli_fetch_array($result)) {
    $section = $row['section'];
    if ($section == ""){
        echo "";
    }
    elseif ($section == "a"){
        echo"<div class='"page-header'">" . $row['section'] . "'</div>";
    }
    echo "<div class='"links-wrap'">
     <div class='"links-box'">
     <div class='"links-image'"><img src='"images/links/" . $row['img1'] . "'"></div>
     <div class='"links-site-txt'">" . $row['link1'] . "</div>
     <div class='"links-desc'">" . $row['desc1'] . "</div>
     </div>
     <div class='"spacer-left'"></div>
     <div class='"links-box'"></div>
     <div class='"spacer-left'"></div>
     <div class='"links-box'"></div>
      </div>";
}
mysqli_close($con);