ホームページ >ウェブフロントエンド >jsチュートリアル >jQuery ajax画像サムネイルの例をアップロードします
この記事では、AJAXを使用して画像をアップロードし、ページリロードなしでサムネイルプレビューを表示する方法を示しています。 このプロセスには、サムネイルの生成と画像ストレージのためのアップロードとPHPバックエンドを処理するためのクライアント側JavaScriptが含まれます。
クライアントサイド(javascript):
コア機能は関数に存在し、uploadImage
を使用してイメージをサーバーに送信します。 アップロードが成功すると、サーバーは元の画像とサムネイル画像の両方のURLを含むJSONデータを返します。 JavaScriptは、画像要素の$.ajaxFileUpload
属性を更新し(プレビューを表す)、サムネイルを表示します。 エラー処理と読み込みインジケーターも含まれています
src
#image-thumb
画像プレビュー要素は、最初にプレースホルダー画像で設定されています:
<code class="language-javascript">uploadImage: function() { // ... (Existing code) ... $.ajaxFileUpload({ // ... (Existing code) ... success: function(data) { // Update image preview _this.cache.$imgPreview.attr('src', data.thumb.img_src); _this.cache.$imgOriginal.attr('src', data.master.img_src); // ... (Existing code) ... }, error: function(xhr, textStatus, errorThrown) { // ... (Existing code) ... }, complete: function() { // ... (Existing code) ... } }); }</code>
フォームの提出には、サムネイルの
属性が含まれています:<code class="language-html"><img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/174036625652715.jpg" class="lazy" alt="jQuery AJAX Image Upload Thumbnail Example "></code>
src
<code class="language-javascript">submitForm: function() { // ... (Existing code) ... formData += '&image-thumb=' + $('#image-thumb').attr('src'); // ... (Existing code) ... }</code>
PHPスクリプトは、アップロードされた画像を受信し、適切な画像操作ライブラリ(GDやImageMagickなど)を使用してサムネイルを生成し、元の画像とサムネイル画像の両方のURLをJSONとして返します。 画像は最初に一時ディレクトリに保存され、フォームの提出時に最終場所に移動します。
セキュリティ上の考慮事項:
スクリプトは、不正アクセスを防ぐために、画像ディレクトリに適切なファイル権限(774など)を設定することの重要性を強調しています。 ファイルタイプの検証やサイズの制限などのさらなるセキュリティ対策が推奨されます。 よくある質問(FAQ):
この記事は、複数の画像アップロード、進行状況バー、ファイル検証、エラー処理、画像のサイズ変更、フォームレスアップロード、セキュリティ、データベースストレージ、画像表示、画像の削除に関する一般的な懸念に対処するFAQセクションで終了します。 これらのFAQは、堅牢な画像アップロード機能のためのベストプラクティスに関する貴重な洞察を提供します。 提案されたソリューションは、HTML5ファイルAPI、Canvas API、サーバー側の検証などのさまざまな手法を活用しています。
以上がjQuery ajax画像サムネイルの例をアップロードしますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。