0


画像をアップロードする前に、システムはアップロード パスを認識している必要があります。
画像パスは画像 ID によって生成されます。
例: 画像 123456 のパスは images/123/456
もちろん、画像 ID は = 最後に挿入された画像 ID + 1
になります 最後にアップロードされた画像の ID を取得する方法 (データはデータベースに保存されます)

私はできるか
select max(image_id) from images

select image_id FROM images order by image_id desc limit 1


しかし、一部のユーザーが画像をアップロードするたびに、それらは大変な作業のようです。
最後のIDを取得するためのより簡単な解決策はありますか

4

1 に答える 1

0

いくつかの手順でそれを行う必要があります。

  1. ユーザーが画像をアップロード
  2. データベースにスケルトン レコードを挿入すると、この新しいレコードの ID を取得できます。
  3. この新しいIDを使用して、アップロードされたファイルを処理/移動します
  4. スケルトン レコードを更新して「アクティブ化」します

PHP はアップロードが完了するまで実行を開始しないため、アップロードの前にこれを行うことはできません。

安全性を最大限に高めるために、トランザクションでデータベース操作を行います。アップロードに問題がある場合 (ファイルの種類が間違っている、アップロードに失敗した、ファイルを処理できないなど)、トランザクションをロールバックするだけで、すべてが元に戻ります。

于 2012-04-22T20:06:30.470 に答える