Php 创建下一步按钮以循环遍历mysql表

Php 创建下一步按钮以循环遍历mysql表,php,mysql,Php,Mysql,我试图使下面的代码在while部分中有一个if/else语句?我正在尝试这样做,如果结果是mysql表中的最后一行,那么显示表中的第一行。否则,显示$id\u相关变量中的id行 我的目标是创建一个“下一步”按钮,该按钮在数据库表中进行基本循环-从id 1到10,当用户到达10并按下“下一步”按钮时,它返回id 1 require('connect.php'); $id_related = mysqli_real_escape_string($db, $_GET['id']); $sql_rela

我试图使下面的代码在while部分中有一个if/else语句?我正在尝试这样做,如果结果是mysql表中的最后一行,那么显示表中的第一行。否则,显示$id\u相关变量中的id行

我的目标是创建一个“下一步”按钮,该按钮在数据库表中进行基本循环-从id 1到10,当用户到达10并按下“下一步”按钮时,它返回id 1

require('connect.php');
$id_related = mysqli_real_escape_string($db, $_GET['id']);
$sql_related = <<<SQL
    SELECT *
    FROM `article_img`
    WHERE `id` > '$id_related' ORDER BY id LIMIT 1 
SQL;

if(!$result = $db->query($sql_related)){
    die('There was an error running the query [' . $db->error . ']');
}
while($row = $result->fetch_assoc()){
echo '
        <a href="article.php?id='.$row['id'].'&size='.$row['size'].'">
            <div style="background-image: url('.$row['img'].');">
            </div>
        </a>

';

}
注: 您可以检查查询将返回的行数。例如,如果当前的$_GET['id']为10,则在查询中绑定,并返回0,则返回表的第一个id行。因此,如果希望扩展表中的行,您不必担心将来会更新代码。 您应该使用mysqli_*而不是mysql_*API。 connect.php的代码:

$con = new mysqli("YourHost", "Username", "Password", "Database"); /* REPLACE NECESSARY DATA */

/* CHECK CONNECTION */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}
您的主要代码是:

require('connect.php'); /* YOUR CONNECTION */

if($stmt = $con->prepare("SELECT id,size,img FROM article_img WHERE id > ? ORDER BY id LIMIT 1")){
  $stmt->bind_param("i",$_GET["id"]); /* BIND THIS VARIABLE TO YOUR QUERY */
  $stmt->execute(); /* EXECUTE QUERY */
  $stmt->store_result(); /* NECESSARY WHEN GETTING THE NUMBER OF ROWS */
  $noofrows = $stmt->num_rows; /* GET NUMBER OF ROWS */
  if($noofrows == 0){ /* IF FOUND NO ROW GREATER THAN CURRENT CODE */
    /* GET THE FIRST ROW IN YOUR article_img */
    $stmt2 = $con->prepare("SELECT id,size,img FROM article_img ORDER BY id LIMIT 1")){
      $stmt2->execute();
      $stmt2->store_result();
      $stmt2->bind_result($id,$size,$img);
      $stmt2->fetch();
      $stmt2->close();
    } /* END OF SECOND PREPARED STATEMENT */
  } /* END OF IF $noofrows IS 0 */
  else { /* IF THERE IS A VALID NEXT ROW */
    /* GET THE NEXT PAGE */
    $stmt->bind_result($id,$size,$img); /* BIND THE RESULT TO THESE VARIABLES OF THE FIRST QUERY  */
    $stmt->fetch(); /* FETCH THE RESULT */
  } /* END OF ELSE */
  $stmt->close();
} /* END OF PREPARED STATEMENT */

echo '<a href="article.php?id='.$id.'&size='.$size.'">
        <div style="background-image: url('.$img.');">
        </div>
      </a>'; /* YOUR LINK TO NEXT PAGE */

谢谢,但出于某种原因,我得到了一张空白页。没有错误