0

PHP の次の ID が必要です。例: データベースにこの ID があります: 10、11、15、19、31、32、34 .....

$img_id=$_GET[img_id]; // ブラウザから画像 ID を取得
$row['id']; // データベースから ID を取得する

PHPを使用して、データベースに設定されているか$i++どうかを確認するにはどうすればよいですか? idそして empty を無視しますid

次の画像を一番下に入れたいので、いくつかの画像を削除しました!!

ありがとうございました

4

2 に答える 2

1

私があなたの質問について理解していることから、IDが連続していない行(1、3、13、16など)がデータベースにあり、ループから可能なIDとして連続した番号で検索して、それらの行にアクセスしたいですか?

for($i=0; $i<100; $i++)
{
    $query = 'SELECT * FROM `table` WHERE `id` = ' . $i;
    $result = mysql_query($query);
    if(mysql_num_rows($result) > 0)
    {
        echo 'This id exists in the table: ' . $id . '<br />';
    }
}

ここで100は潜在的な数値として機能しますが、必要なものを達成する必要があります。問題に適用できる解決策はたくさんありますが、それはあなたが尋ねている質問で私が考える最も簡単なことです。

于 2011-03-16T01:35:04.133 に答える
-1

何を言おうとしているのか、かなり不明です。しかし、私はそれを試してみます。

テーブルからいくつかのレコードを削除したことを意味していると思いますがMAX(id)、次の挿入では最後から続行されません。そのためには、次のことを試すことができます。

後述の @col のように、本番環境では使用しないでください。テスト環境のみで使用してください。レコードが削除されると、シーケンスは失われます。

mysql_query("ALTER TABLE `table_name` AUTO_INCREMENT = 1");

これが何をするかというとimages、最大idの say99で名前が付けられたテーブルがあり、このイメージを削除した場合です。次に入力する画像にはid=100. したがって、IDは次のようになり97,98,100ます。これにより、MySQL は強制的に から続行されるMAX(id) + 1ため、見た目は97,98,99.

また、php から最後の挿入 ID を取得する便利な関数:

$last_id = mysql_insert_id();

$last_idこれで、データベースからの最後のAUTO_INCREMENT値が取得されます。

お役に立てれば。

于 2011-03-16T13:01:49.910 に答える