为Sql表中的每一行循环一个If语句


Loop an If Statement for each row in Sql table

我试图在PHP循环中为Sql表中的每一行做一个If语句。我想我快搞定了,但是有一个语法错误,我不太明白。这是我目前得到的:

$mysqli = new mysqli("localhost", "root", "usbw", "favourites");
                // check connection
                if ($mysqli->connect_errno) {
                    die("Connect failed: ".$mysqli->connect_error);
                }
                $query = "SELECT * FROM defaultTiles";
                $result = $mysqli->query($query);
                while($row = $result->fetch_array()){
                echo "<?php if ($tile_name === '$row[name]'){
                    $tile_colour = '$row[colour]';
                    $img_url = '$row[img_url]';
                    $link_url = '$row[link_url]';
                } ?>";
                }

Replace

while($row = $result->fetch_array()){
     echo "<?php if ($tile_name === '$row[name]'){
                    $tile_colour = '$row[colour]';
                    $img_url = '$row[img_url]';
                    $link_url = '$row[link_url]';
     } ?>";
}

while($row = $result->fetch_array()){
     if ($tile_name === $row['name']){
          $tile_colour = $row['colour'];
          $img_url = $row['img_url'];
          $link_url = $row['link_url'];
     } 
}

作为,当您将echo放在if语句前面时,它只是在echo中打印语句。