0

私は次のようにdbテーブルから自分のページに画像を表示しています:

<?php
if ($db_found) {
$SQL = "SELECT * FROM myTable where id='$posted_id'";
$result = mysql_query($SQL);

while ($db_field = mysql_fetch_assoc($result)) {

echo '<img src="images/'.$db_field['image'].'" alt="" />';

}
mysql_close($db_handle);
}
?>

<a href="#">Next</a>

$posted_idがたとえば1の場合...[次へ]リンクをクリックすると、画像ID=2が表示されるようにするにはどうすればよいですか。

4

2 に答える 2

1

MySQLのLIMITフィルターとORDERフィルターを使用する必要があります。

<?php

if (isset($_GET['current'])) {
    $current = $_GET['current'];
} else {
    $current = 0;
}

$request = "SELECT * FROM myTable ORDER BY id ASC LIMIT " . $current . ",1";

?>

そして、次のアイテムをキャッチするために、次のようなことを行うことができます。

<?php
// make the last item point to the first one
$loop = true;

$count = "SELECT COUNT(*) FROM myTable";

if ($current < $count) {
    $next = $current + 1;

} else if ($loop) {
    $next = 0;

// no loop, then just stay at the end
} else {
    $next = $current;

}

?>
于 2012-05-24T10:11:27.687 に答える
1

そのためには、ページを更新するか、ajax を使用する必要があります。

このように、url で変数 posted_id を渡すことができます。

<a href="www.yourwebsite.com?posted_id=<?php echo ($db_field['id'] + 1);?>">Next</a>

このようにして、データベースから次のIDを渡すことができます.. IDが順番に落ちる場合。

次のIDのレコードがデータベースに存在しない場合の対処方法などの問題をプログラムで処理する必要もあります..

于 2012-05-24T10:06:42.677 に答える