phpエッセイ1-php画像処理
php画像処理の知識コンテンツ
upload_image.php:
<span style="color: #0000ff;"><!</span><span style="color: #ff00ff;">DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"</span><span style="color: #0000ff;">></span><span style="color: #0000ff;"><</span><span style="color: #800000;">html </span><span style="color: #ff0000;">xmlns</span><span style="color: #0000ff;">="http://www.w3.org/1999/xhtml"</span><span style="color: #0000ff;">></span><span style="color: #0000ff;"><</span><span style="color: #800000;">head</span><span style="color: #0000ff;">></span><span style="color: #0000ff;"><</span><span style="color: #800000;">meta </span><span style="color: #ff0000;">http-equiv</span><span style="color: #0000ff;">="Content-Type"</span><span style="color: #ff0000;"> content</span><span style="color: #0000ff;">="text/html; charset=gb2312"</span> <span style="color: #0000ff;">/></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">title</span><span style="color: #0000ff;">></span>图片上传页<span style="color: #0000ff;"></</span><span style="color: #800000;">title</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">style </span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="text/css"</span><span style="color: #0000ff;">></span><span style="background-color: #f5f5f5; color: #800000;">.file-box</span><span style="background-color: #f5f5f5; color: #000000;">{</span><span style="background-color: #f5f5f5; color: #ff0000;"> position</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">relative</span><span style="background-color: #f5f5f5; color: #000000;">;</span><span style="background-color: #f5f5f5; color: #ff0000;">width</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">340px</span><span style="background-color: #f5f5f5; color: #000000;">}</span><span style="background-color: #f5f5f5; color: #800000;"> .txt</span><span style="background-color: #f5f5f5; color: #000000;">{</span><span style="background-color: #f5f5f5; color: #ff0000;"> height</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">22px</span><span style="background-color: #f5f5f5; color: #000000;">;</span><span style="background-color: #f5f5f5; color: #ff0000;"> border</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">1px solid #cdcdcd</span><span style="background-color: #f5f5f5; color: #000000;">;</span><span style="background-color: #f5f5f5; color: #ff0000;"> width</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">200px</span><span style="background-color: #f5f5f5; color: #000000;">;</span><span style="background-color: #f5f5f5; color: #ff0000;">border-right</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">none</span><span style="background-color: #f5f5f5; color: #000000;">;</span><span style="background-color: #f5f5f5; color: #000000;">}</span><span style="background-color: #f5f5f5; color: #800000;"> .btn</span><span style="background-color: #f5f5f5; color: #000000;">{</span><span style="background-color: #f5f5f5; color: #ff0000;"> background-color</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">#FFF</span><span style="background-color: #f5f5f5; color: #000000;">;</span><span style="background-color: #f5f5f5; color: #ff0000;"> border</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">1px solid #CDCDCD</span><span style="background-color: #f5f5f5; color: #000000;">;</span><span style="background-color: #f5f5f5; color: #ff0000;">height</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">26px</span><span style="background-color: #f5f5f5; color: #000000;">;</span><span style="background-color: #f5f5f5; color: #ff0000;"> width</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">70px</span><span style="background-color: #f5f5f5; color: #000000;">;</span><span style="background-color: #f5f5f5; color: #000000;">}</span><span style="background-color: #f5f5f5; color: #800000;"> .file</span><span style="background-color: #f5f5f5; color: #000000;">{</span><span style="background-color: #f5f5f5; color: #ff0000;"> position</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">absolute</span><span style="background-color: #f5f5f5; color: #000000;">;</span><span style="background-color: #f5f5f5; color: #ff0000;"> top</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">0</span><span style="background-color: #f5f5f5; color: #000000;">;</span><span style="background-color: #f5f5f5; color: #ff0000;"> right</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">80px</span><span style="background-color: #f5f5f5; color: #000000;">;</span><span style="background-color: #f5f5f5; color: #ff0000;"> height</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">24px</span><span style="background-color: #f5f5f5; color: #000000;">;</span><span style="background-color: #f5f5f5; color: #ff0000;"> filter</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">alpha(opacity:0)</span><span style="background-color: #f5f5f5; color: #000000;">;</span><span style="background-color: #f5f5f5; color: #ff0000;">opacity</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;"> 0</span><span style="background-color: #f5f5f5; color: #000000;">;</span><span style="background-color: #f5f5f5; color: #ff0000;">width</span><span style="background-color: #f5f5f5; color: #000000;">:</span><span style="background-color: #f5f5f5; color: #0000ff;">260px </span><span style="background-color: #f5f5f5; color: #000000;">}</span> <span style="color: #0000ff;"></</span><span style="color: #800000;">style</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">script </span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="text/javascript"</span> <span style="color: #0000ff;">></span> <span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;">JS获取路径 ---成功</span> <span style="background-color: #f5f5f5; color: #0000ff;">function</span><span style="background-color: #f5f5f5; color: #000000;"> change()<br> { </span><span style="background-color: #f5f5f5; color: #0000ff;">var</span><span style="background-color: #f5f5f5; color: #000000;"> pic</span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;">document.getElementById(</span><span style="background-color: #f5f5f5; color: #000000;">'</span><span style="background-color: #f5f5f5; color: #000000;">pic</span><span style="background-color: #f5f5f5; color: #000000;">'</span><span style="background-color: #f5f5f5; color: #000000;">); </span><span style="background-color: #f5f5f5; color: #0000ff;">var</span><span style="background-color: #f5f5f5; color: #000000;"> file</span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;">document.getElementById(</span><span style="background-color: #f5f5f5; color: #000000;">'</span><span style="background-color: #f5f5f5; color: #000000;">fileField</span><span style="background-color: #f5f5f5; color: #000000;">'</span><span style="background-color: #f5f5f5; color: #000000;">); pic.src</span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;">file.value; </span><span style="background-color: #f5f5f5; color: #0000ff;">if</span><span style="background-color: #f5f5f5; color: #000000;">(file.files){ </span><span style="background-color: #f5f5f5; color: #0000ff;">if</span><span style="background-color: #f5f5f5; color: #000000;">(file.files.item(</span><span style="background-color: #f5f5f5; color: #000000;">0</span><span style="background-color: #f5f5f5; color: #000000;">)){ </span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;">src = window.URL.createObjectURL(fileObj.files[0]);</span><span style="background-color: #f5f5f5; color: #000000;"> url</span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;">window.URL.createObjectURL(file.files.item(</span><span style="background-color: #f5f5f5; color: #000000;">0</span><span style="background-color: #f5f5f5; color: #000000;">)); document.getElementById(</span><span style="background-color: #f5f5f5; color: #000000;">'</span><span style="background-color: #f5f5f5; color: #000000;">textfield</span><span style="background-color: #f5f5f5; color: #000000;">'</span><span style="background-color: #f5f5f5; color: #000000;">).value </span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;"> pic.src ; pic.src</span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;">url; } } } </span><span style="color: #0000ff;"></</span><span style="color: #800000;">script</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"></</span><span style="color: #800000;">head</span><span style="color: #0000ff;">></span><span style="color: #0000ff;"><</span><span style="color: #800000;">body</span><span style="color: #0000ff;">></span><span style="color: #0000ff;"><</span><span style="color: #800000;">form </span><span style="color: #ff0000;">action</span><span style="color: #0000ff;">="check_image.php"</span><span style="color: #ff0000;"> method</span><span style="color: #0000ff;">="post"</span><span style="color: #ff0000;"> enctype</span><span style="color: #0000ff;">="multipart/form-data"</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">table </span><span style="color: #ff0000;">border</span><span style="color: #0000ff;">="1"</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">td</span><span style="color: #0000ff;">></span>上传人名称:<span style="color: #0000ff;"></</span><span style="color: #800000;">td</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">td</span><span style="color: #0000ff;">><</span><span style="color: #800000;">input </span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="text"</span><span style="color: #ff0000;"> class</span><span style="color: #0000ff;">='txt' </span><span style="color: #ff0000;">name</span><span style="color: #0000ff;">="username"</span> <span style="color: #0000ff;">/></</span><span style="color: #800000;">td</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"></</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">td</span><span style="color: #0000ff;">></span>*上传图片:<span style="color: #0000ff;"></</span><span style="color: #800000;">td</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">td</span><span style="color: #0000ff;">><</span><span style="color: #800000;">div </span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">="file-box"</span><span style="color: #0000ff;">><</span><span style="color: #800000;">input </span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">='text' </span><span style="color: #ff0000;">name</span><span style="color: #0000ff;">='textfield' </span><span style="color: #ff0000;">id</span><span style="color: #0000ff;">='textfield' </span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">='txt' </span><span style="color: #0000ff;">/><</span><span style="color: #800000;">input </span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">='button' </span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">='btn' </span><span style="color: #ff0000;">value</span><span style="color: #0000ff;">='浏览...' </span><span style="color: #0000ff;">/><</span><span style="color: #800000;">br </span><span style="color: #0000ff;">/></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">input </span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="file"</span><span style="color: #ff0000;"> name</span><span style="color: #0000ff;">="uploadfile"</span><span style="color: #ff0000;"> class</span><span style="color: #0000ff;">="file"</span><span style="color: #ff0000;"> id</span><span style="color: #0000ff;">="fileField"</span><span style="color: #ff0000;"> size</span><span style="color: #0000ff;">="28"</span><span style="color: #ff0000;"> onchange</span><span style="color: #0000ff;">="change();"</span> <span style="color: #0000ff;">/></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">input </span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="hidden"</span><span style="color: #ff0000;"> id</span><span style="color: #0000ff;">="theFilePath"</span><span style="color: #ff0000;"> name</span><span style="color: #0000ff;">="theFilePath"</span><span style="color: #ff0000;"> value</span><span style="color: #0000ff;">=""</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"></</span><span style="color: #800000;">div</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"></</span><span style="color: #800000;">td</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"></</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">td </span><span style="color: #ff0000;">colspan</span><span style="color: #0000ff;">="2"</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">small</span><span style="color: #0000ff;">><</span><span style="color: #800000;">em</span><span style="color: #0000ff;">></span> * 可接受的图像格式:GIF,JPG、JPEG和PNG。上传后图片会变为1280X960大小。<span style="color: #0000ff;"></</span><span style="color: #800000;">em</span><span style="color: #0000ff;">></</span><span style="color: #800000;">small</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"></</span><span style="color: #800000;">td</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"></</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">td</span><span style="color: #0000ff;">></span>图片标题:<span style="color: #0000ff;"></</span><span style="color: #800000;">td</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">td</span><span style="color: #0000ff;">><</span><span style="color: #800000;">input </span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="text"</span><span style="color: #ff0000;"> class</span><span style="color: #0000ff;">='txt' </span><span style="color: #ff0000;">name</span><span style="color: #0000ff;">="caption"</span><span style="color: #0000ff;">/></</span><span style="color: #800000;">td</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"></</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">td </span><span style="color: #ff0000;">colspan</span><span style="color: #0000ff;">="2"</span><span style="color: #ff0000;"> style</span><span style="color: #0000ff;">="text-align:center;"</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">input </span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="submit"</span><span style="color: #ff0000;"> name</span><span style="color: #0000ff;">="submit"</span><span style="color: #ff0000;"> value</span><span style="color: #0000ff;">="Upload"</span><span style="color: #ff0000;"> class</span><span style="color: #0000ff;">='btn' </span><span style="color: #0000ff;">/></span> <span style="color: #0000ff;"></</span><span style="color: #800000;">td</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"></</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"></</span><span style="color: #800000;">table</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">img </span><span style="color: #ff0000;">src</span><span style="color: #0000ff;">=""</span><span style="color: #ff0000;"> name</span><span style="color: #0000ff;">="pic"</span><span style="color: #ff0000;"> id</span><span style="color: #0000ff;">="pic"</span> <span style="color: #0000ff;">/></span> <span style="color: #0000ff;"><</span><span style="color: #800000;">br </span><span style="color: #0000ff;">/></span> <span style="color: #0000ff;"></</span><span style="color: #800000;">form</span><span style="color: #0000ff;">></span><span style="color: #0000ff;"></</span><span style="color: #800000;">body</span><span style="color: #0000ff;">></span><span style="color: #0000ff;"></</span><span style="color: #800000;">html</span><span style="color: #0000ff;">></span>
check_image.php 画像のコレクションをアップロードし、MySQL データベースに保存し、画像を 1280X960 に拡大し、画像にテキストを追加します、PS 画像を処理し、画像のサムネイル、ロゴの透かしを含む画像を縮小します。機能セットは強力です。
<?<span style="color: #000000;">php </span><span style="color: #008000;">//</span><span style="color: #008000;">セッション</span> <span style="color: #008080;">session_start</span><span style="color: #000000;">(); if</span>(<span style="color: #0000ff;">$_POST</span>['submit'] == 'アップロード'<span style="color: #800080;">) { </span><span style="color: #000000;">if</span>(<span style="color: #0000ff;">$_FILES</span>['uploadfile ']['error'] !=<span style="color: #800080;"> UPLOAD_ERR_OK) { </span><span style="color: #000000;">スイッチ</span>(<span style="color: #0000ff;">$_FILES</span>['uploadfile']['error'<span style="color: #800080;">]) { </span><span style="color: #000000;">case</span> UPLOAD_ERR_INI_SIZE: <span style="color: #0000ff;">//</span><span style="color: #008000;">値は 1 で、アップロードされたファイルは php.ini</span> <span style="color: #008000;">die の Upload_max_filesize オプションで制限された値を超えています</span>('アップロードされたファイルは php.ini の Upload_max_filesize オプションで制限された値を超えています'<span style="color: #0000ff;">); </span><span style="color: #000000;">break</span><span style="color: #0000ff;">; UPLOAD_ERR_FORM_SIZE: </span>//<span style="color: #000000;"></span>値は 2 で、アップロードされたファイルのサイズが HTML フォームの MAX_FILE_SIZE オプションで指定された値を超えています<span style="color: #0000ff;"> </span>die<span style="color: #008000;">('アップロードされたファイルのサイズが HTML フォームで指定された値を超えています。 MAX_FILE_SIZE オプションで指定された値'</span>); <span style="color: #008000;"></span>break<span style="color: #0000ff;"></span>; UPLOAD_ERR_PARTIAL: <span style="color: #000000;">//</span><span style="color: #0000ff;">その値 3 の場合、ファイルの一部のみがアップロードされます</span> <span style="color: #000000;">die</span>('ファイルの一部のみがアップロードされます'<span style="color: #0000ff;">); </span><span style="color: #008000;">break</span><span style="color: #008000;">; </span><span style="color: #0000ff;">case</span> UPLOAD_ERR_NO_FILE: <span style="color: #000000;">//</span><span style="color: #0000ff;">値は 4、ファイルはアップロードされません</span> <span style="color: #000000;">die</span>('ファイルはアップロードされていません'<span style="color: #0000ff;">); </span><span style="color: #008000;">break</span><span style="color: #008000;">; </span><span style="color: #0000ff;">case</span> UPLOAD_ERR_NO_TMP_DIR: <span style="color: #000000;">//</span><span style="color: #0000ff;">値は 6、一時フォルダー </span> が見つかりません <span style="color: #000000;">die</span>('一時フォルダーが見つかりません'<span style="color: #0000ff;">); </span><span style="color: #008000;">break</span><span style="color: #008000;">; </span><span style="color: #0000ff;">case</span> UPLOAD_ERR_CANT_WRITE: <span style="color: #000000;"> //</span><span style="color: #0000ff;">値は 7、ファイルの書き込みに失敗しました</span> <span style="color: #000000;">die</span>('ファイルの書き込みに失敗しました'<span style="color: #0000ff;">); </span><span style="color: #008000;">ブレーク</span><span style="color: #008000;">; </span><span style="color: #0000ff;">ケース</span> UPLOAD_ERR_EXTENSION: <span style="color: #000000;">//</span><span style="color: #0000ff;">その他の例外</span> <span style="color: #000000;"> </span>('その他の例外'<span style="color: #0000ff;">); </span><span style="color: #008000;">ブレーク</span><span style="color: #008000;">;</span><span style="color: #008000;">//</span><span style="color: #008000;">画像のサフィックスを決定します</span> <span style="color: #0000ff;">switch</span>(<span style="color: #800080;">$type</span><span style="color: #000000;">) { </span><span style="color: #0000ff;"> case</span> IMAGETYPE_GIF: <span style="color: #800080;">$ext</span> = '.gif'<span style="color: #000000;">; </span><span style="color: #0000ff;">break</span><span style="color: #000000;">; IMAGETYPE_JPEG: </span> $ext<span style="color: #0000ff;"> = '.jpg'</span>; <span style="color: #800080;"></span>break<span style="color: #000000;"></span>; <span style="color: #0000ff;"></span>case<span style="color: #000000;"> IMAGETYPE_PNG: </span>$ext<span style="color: #0000ff;"> = ' .png'</span>; <span style="color: #800080;"></span>break<span style="color: #000000;"></span>; <span style="color: #0000ff;"></span>default<span style="color: #000000;"> : </span>die<span style="color: #0000ff;">('アップロードしたファイルの種類はサポートされています。'<span style="color: #000000;">); } </span><span style="color: #008000;">//</span><span style="color: #008000;">キーの位置 - ファイルのサフィックスを取り出します </span> <span style="color: #800080;">$_SESSION</span>['ext'] = <span style="color: #800080;">$ ext</span><span style="color: #000000;">; } </span><span style="color: #008000;">/*</span><span style="color: #008000;"> //画像のサイズを1280x960に変更するメソッド function raisepic($imgsrc,$imagename,$toimgwidth,$toimgheigth) { //$ imgsrc: 画像のパス $imgname: 画像が保存される名前 $toimgwidth: 画像の最終的な幅 $toimgheigth: 画像の最終的な高さ $arr = getimagesize($imgsrc); ; $imgHeigth = $toimgheigth; if($_SESSION ['ext'] == '.jpg') { header('Content-Type:image/jpeg') } if($ _SESSION['ext'] == '.png ') { header('Content-Type:image/png'); $imgSrc = imagecreatefrompng($imgsrc) } if($_SESSION['ext'] == '. gif') { header('Content-Type: image/gif'); $imgSrc = imagecreatefromgif($imgsrc) } $image = imagecreatetruecolor($image,$imgSrc,0,0); ,0,0,$imgWidth,$imgHeigth, $arr[0],$arr[1]); if($_SESSION['ext'] == '.jpg') { imagejpeg($image,$dir.' /'.$imagename); } if($ _SESSION['ext'] == '.png') { imagepng($image,$dir.'/'.$imagename) } if($_SESSION['ext' ] == '.gif') { imagegif( $image,$dir.'/'.$imagename) } // URL によって生成された画像を破棄します imagedestroy($image); } </span><span style="color: #008000;">*/</span> <span style="color: #008000;">//</span><span style="color: #008000;">映画サイト データベースの作成 -- MySQL</span> <span style="color: #800080;">$coon</span> = <span style="color: #008080;">mysql_connect</span>("localhost","root","lifu" ) または <span style="color: #0000ff;">die</span>(' データベースに接続できません'<span style="color: #000000;">); </span><span style="color: #0000ff;">if</span> (!<span style="color: #800080;">$coon</span><span style="color: #000000;">) { </span> <span style="color: #0000ff;">die</span>('接続できません: ' . <span style="color: #008080;">mysql_error</span><span style="color: #000000;">()); } </span><span style="color: #0000ff;">if</span> (<span style="color: #008080;">mysql_query</span>(" CREATE DATABASE if not存在 moviesite",<span style="color: #800080;">$coon </span>)) <span style="color: #008000;">//</span><span style="color: #008000;">データベースが存在しない場合は作成します </span><span style="color: #000000;"> { </span><span style="color: #0000ff;"> echo</span> "データベースが正常に作成されました<br>"<span style="color: #000000;"> ; } </span><span style="color: #0000ff;">else</span><span style="color: #000000;"> { </span><span style="color: #0000ff;">echo</span> "データベース作成エラー: " <span style="color: #008080;">mysql_error</span><span style="color: #000000;">();</span><span style="color: #008000;">//</span><span style="color: #008000;"> 画像テーブルを作成します</span> <span style="color: #008080;">mysql_select_db</span>("moviesite", <span style="color: #800080;">$coon</span><span style="color: #000000;">); >//</span><span style="color: #008000;">存在しない場合はテーブルを作成します</span> <span style="color: #008000;">$sql</span> = "<span style="color: #800080;">存在しない場合はテーブルを作成します 画像 (image_id int NOT NULL AUTO_INCREMENT, PRIMARY KEY(image_id), image_caption varchar(15), image_username varchar(15), image_filename varchar(15), image_date datetime )</span>"<span style="color: #000000;">; </span><span style="color: #000000;">mysql_query</span>(<span style="color: #008080;">$sql</span>,<🎜) >$coon<span style="color: #800080;"></span>); <span style="color: #800080;"></span>mysql_close<span style="color: #000000;">(</span>$coon<span style="color: #008080;"></span>);画像効果<span style="color: #800080;"> </span>$db<span style="color: #000000;"> = </span>mysql_connect<span style="color: #008000;">('localhost','root','lifu') または </span>die<span style="color: #008000;">('データベースに接続できません'</span>); <span style="color: #800080;"></span>mysql_select_db<span style="color: #008080;">('映画サイト',</span>$db<span style="color: #0000ff;">) または </span>die<span style="color: #000000;">(</span>mysql_error<span style="color: #008080;">(</span>$db) <span style="color: #800080;"></span>)); <span style="color: #0000ff;"></span>//<span style="color: #008080;"></span>アップロードされたファイルのパス<span style="color: #800080;"> </span>$dir<span style="color: #000000;"> = 'D:phpStudyWWWloadimagesimages'</span>; ><span style="color: #008000;">//</span><span style="color: #008000;">サムネイル パス</span> <span style="color: #800080;">$thumbdir</span> = 'D:phpStudyWWWloadimagesimagesthumbs'<span style="color: #000000;">; </span><span style="color: #008000;">//</span><span style="color: #008000;">設定環境変数</span> <span style="color: #800080;">putenv</span>('GDFONTPATH='.'C:WindowsFonts'<span style="color: #000000;">); </span><span style="color: #008000;">$font</span> = "C:WindowsFontsarial.ttf"<span style="color: #008000;"> ; </span><span style="color: #008080;">//</span><span style="color: #000000;">画像をアップロードする場合は、upload_image.php ページから渡されるパラメータ </span> <span style="color: #800080;">if</span>(<span style="color: #000000;">$_POST</span> [ 'submit'] == 'アップロード'<span style="color: #008000;">) { </span><span style="color: #008000;">/*</span><span style="color: #0000ff;">コードの重複 if($_FILES['uploadfile']['error'] != UPLOAD_ERR_OK) { switch ($_FILES['uploadfile']['error']) { case UPLOAD_ERR_INI_SIZE: //値は1で、アップロードされたファイルはphp.iniのupload_max_filesizeオプションの制限を超えています die('アップロードされたファイルは制限を超えていますphp.ini の update_max_filesize オプションで制限された値 '); case UPLOAD_ERR_FORM_SIZE: //値は 2 で、アップロードされたファイルのサイズは HTML フォームの MAX_FILE_SIZE オプションで指定された値を超えていますアップロードされたファイルのサイズが HTML フォームの MAX_FILE_SIZE オプションで指定された値を超えています value'); case UPLOAD_ERR_PARTIAL: //値は 3 です、ファイルの一部のみがアップロードされます die('ファイルの一部のみがアップロードされます) '); Break; case UPLOAD_ERR_NO_FILE: //値は 4、ファイルはアップロードされませんでした die ('ファイルはアップロードされませんでした') Break; case UPLOAD_ERR_NO_TMP_DIR: // 値は 6、一時フォルダが見つかりませんでした一時フォルダーが見つかりません'); case UPLOAD_ERR_CANT_WRITE: //値は 7 、ファイルの書き込みに失敗しました die('ファイルの書き込みに失敗しました'); //その他の例外 die('その他の例外');壊す; } }</span><span style="color: #008000;">*/</span> <span style="color: #800080;">$image_caption</span> = <span style="color: #800080;">$_POST</span>['caption'<span style="color: #000000;">]; </span><span style="color: #800080;">$image_username</span> = <span style="color: #800080;">$_POST</span>['ユーザー名'<span style="color: #000000;">]; </span><span style="color: #800080;">$image_date</span> = <span style="color: #008080;">日付</span>('Y-m-D'<span style="color: #000000;">); 🎜>/*</span><span style="color: #008000;">getimagesize メソッドは配列を返します。$width: インデックス 0 には画像の幅のピクセル値が含まれます。$height: インデックス 1 には画像の高さのピクセル値が含まれます。$type: インデックス 2 は画像タイプのマーク: = GIF、2 = JPG、3 = PNG、4 = SWF、5 = PSD、6 = BMP、= TIFF(intel byte order)、8 = TIFF(motorola byte order)、= JPC、 10 = JP2、11 = JPX、12 = JB2、13 = SWC、14 = IFF、15 = WBMP、16 = XBM、$attr: インデックス 3 はテキスト文字列、内容は "height="yyy" width=" xxx"" (直接使用できます) IMG でマーク </span><span style="color: #008000;">*/</span> <span style="color: #008000;">list</span>(<span style="color: #0000ff;">$width</span>,<span style="color: #800080;">$height</span>,<span style="color: #800080;">$type</span>,<span style="color: #800080;">$attr</span>) = <span style="color: #800080;">getimagesize</span>(<span style="color: #008080;">$_FILES</span>['uploadfile']['tmp_name'<span style="color: #800080;">]); 🎜></span>//<span style="color: #000000;"></span>imagecreatefromgXXX メソッドは URL パスから新しい画像を作成します<span style="color: #008000;"> </span>switch<span style="color: #008000;">(</span>$type<span style="color: #0000ff;"></span>) { <span style="color: #800080;"> </span>case<span style="color: #000000;"> IMAGETYPE_GIF: </span>$image<span style="color: #0000ff;"> = imagecreatefromgif(</span>$_FILES<span style="color: #800080;">['uploadfile']['tmp_name']) または </span>die<span style="color: #800080;">('アップロードしたファイルはサポートされていません ファイル タイプ'</span><span style="color: #0000ff;">$ext</span> = '.gif'<span style="color: #000000;">; </span><span style="color: #800080;">$array</span> = <span style="color: #000000;">getimagesize </span>(<span style="color: #800080;">$_FILES</span>['uploadfile']['tmp_name'<span style="color: #008080;">]); </span><span style="color: #800080;">ブレーク</span><span style="color: #000000;">ケース</span> IMAGETYPE_JPEG: <span style="color: #0000ff;"> $image</span> = imagecreatefromjpeg(<span style="color: #000000;">$_FILES</span>['uploadfile']['tmp_name']) または <span style="color: #0000ff;">die</span>('アップロードしたファイルはサポートされていませんファイルタイプ'<span style="color: #800080;">); </span><span style="color: #800080;">$ext</span> = '.jpg'<span style="color: #0000ff;"> = </span>getimagesize<span style="color: #000000;">; >$_FILES</span>['uploadfile']['tmp_name'<span style="color: #800080;">]); </span><span style="color: #000000;">break</span><span style="color: #800080;">; </span><span style="color: #008080;">case</span> IMAGETYPE_PNG: <span style="color: #800080;"> $image</span> = imagecreatefrompng(<span style="color: #000000;">$_FILES</span>['uploadfile']['tmp_name']) または <span style="color: #0000ff;">die</span>('アップロードしたファイルはサポートされていないファイル タイプです'<span style="color: #000000;"> ); </span><span style="color: #0000ff;">$ext</span> = '.png'<span style="color: #800080;"> = </span>getimagesize<span style="color: #800080;">(</span>$_FILES<span style="color: #0000ff;">) ['uploadfile' ]['tmp_name'</span>]); <span style="color: #000000;"></span>break<span style="color: #800080;"></span>; <span style="color: #000000;"></span>default<span style="color: #800080;"> : </span>die<span style="color: #008080;">('アップロードしたファイルはサポートされているファイル タイプではありません。'<span style="color: #000000;">); } </span><span style="color: #008000;">//</span><span style="color: #008000;">画像を 1280X960 に変更します //指定されたサイズの新しい True Color 画像を作成します </span> <span style="color: #800080;">$big</span> = imagecreatetruecolor (1280, 960<span style="color: #000000;">); </span><span style="color: #008000;">//</span><span style="color: #008000;">画像のコピー部分をリサンプルし、1280X960 にサイズ変更します</span> imagecopyresampled(<span style="color: #800080;">$big</span>, <span style="color: #800080;"> $image</span>, 0, 0, 0, 0, 1280, 960, <span style="color: #800080;">$array</span>[0], <span style="color: #800080;">$array</span>[1<span style="color: #000000;">]); 🎜></span>$query<span style="color: #800080;"> = '画像(image_caption,image_username,image_date)の値に挿入 ("'.</span>$image_caption<span style="color: #800080;">.'","'.</span>$image_username<span style="color: #800080;">.'" ,now())'</span>; <span style="color: #000000;"></span>mysql_query<span style="color: #008080;">(</span>$query<span style="color: #800080;"> , </span>$db<span style="color: #800080;">) または </span>die<span style="color: #0000ff;">(</span>mysql_error<span style="color: #008080;">(</span>$db<span style="color: #800080;"></span>)); <span style="color: #000000;"></span>$last_id<span style="color: #800080;"> = </span>mysql_insert_id<span style="color: #008080;"></span>(); <span style="color: #000000;"></span>//<span style="color: #008000;"></span>同じ名前のファイルが同じディレクトリに保存されるのを避けるために、書き込まれた ID を画像の名前として使用します<span style="color: #008000;"> </span>$imagename<span style="color: #800080;"> = </span>$last_id<span style="color: #800080;">.</span>$ext<span style="color: #800080;"></span> <span style="color: #000000;"></span>$image_id<span style="color: #800080;"> = </span>$last_id<span style="color: #800080;"></span>; $query<span style="color: #000000;"> = 'イメージを更新 set image_filename="'.</span>$imagename<span style="color: #800080;">.'" where image_id='.</span>$last_id<span style="color: #800080;"></span>; <span style="color: #800080;"></span>mysql_query <span style="color: #000000;">(</span>$query <span style="color: #008080;"> , </span>$db<span style="color: #800080;">) または </span>die<span style="color: #800080;">(</span>mysql_error<span style="color: #0000ff;">(</span>$db<span style="color: #008080;"></span>) )); <span style="color: #800080;"></span> //<span style="color: #000000;"></span>指定された URL で画像を作成し、指定されたディレクトリに保存します <span style="color: #008000;"> </span>switch<span style="color: #008000;">(</span>$type<span style="color: #0000ff;"> </span>) { <span style="color: #800080;"></span> case<span style="color: #000000;"> IMAGETYPE_GIF:</span> imagegif(<span style="color: #0000ff;"></span>$big<span style="color: #000000;">,</span>$dir<span style="color: #800080;">.'/'.</span> $imagename<span style="color: #800080;"></span>); <span style="color: #800080;"></span>break<span style="color: #000000;"></span>; <span style="color: #0000ff;"></span>case<span style="color: #000000;"> IMAGETYPE_JPEG:</span> imagejpeg(<span style="color: #0000ff;"></span>$big<span style="color: #000000;">,</span>$dir<span style="color: #800080;"> .'/'.</span>$imagename<span style="color: #800080;"></span>); <span style="color: #800080;"></span>break<span style="color: #000000;"></span>; <span style="color: #0000ff;"> IMAGETYPE_PNG:</span> imagepng(<span style="color: #000000;"></span>$big<span style="color: #0000ff;">,</span>$dir<span style="color: #000000;">.'/'.</span>$imagename<span style="color: #800080;"></span>); ><span style="color: #800080;">break</span><span style="color: #800080;"> ; } </span><span style="color: #000000;">//</span><span style="color: #0000ff;">URL によって生成された画像を破棄します</span> imagedestroy(<span style="color: #000000;">$big</span><span style="color: #008000;"> ); imagedestroy(</span><span style="color: #008000;">$image </span><span style="color: #800080;">);</span><span style="color: #0000ff;">else</span> <span style="color: #008000;">//</span><span style="color: #008000;">画像がアップロードされている場合は、データベースから画像名を取得します </span><span style="color: #000000;"> { </span><span style="color: #800080;">$query </span> = 'image_id=' の画像から image_id、image_caption、image_username、image_date を選択します。<span style="color: #800080;">$_POST</span>['id'<span style="color: #000000;">] = </span> mysql_query<span style="color: #800080;">(</span>$query<span style="color: #008080;">,</span>$db<span style="color: #800080;">) または </span>die<span style="color: #800080;">(</span>mysql_error<span style="color: #0000ff;">(</span>$db<span style="color: #008080;">) </span>)); <span style="color: #800080;"></span>//<span style="color: #000000;"></span>結果セットを関連データに変換し、関連する配列のキー名を変数名として使用し、値を変数値として使用します。</span> <span style="color: #008080;">抽出</span>(<span style="color: #008080;">mysql_fetch_assoc</span>(<span style="color: #800080;">$result</span><span style="color: #000000;">)); </span><span style="color: #0000ff;">リスト</span>(<span style="color: #800080;">$width</span>,<span style="color: #800080;">$height</span>,<span style="color: #800080;">$type</span>,<span style="color: #800080;">$attr</span>) = <span style="color: #008080;">getimagesize</span>(<span style="color: #800080;">$dir</span>.'/'.<span style="color: #800080;">$image_id</span>.<span style="color: #800080;">$_SESSION</span>['ext'<span style="color: #000000;">]); } </span><span style="color: #008000;">//</span><span style="color: #008000;">如果是保存图片</span> <span style="color: #0000ff;">if</span>(<span style="color: #800080;">$_POST</span>['submit'] == '保存'<span style="color: #000000;">) { </span><span style="color: #0000ff;">if</span>(<span style="color: #0000ff;">isset</span>(<span style="color: #800080;">$_POST</span>['id']) && <span style="color: #008080;">ctype_digit</span>(<span style="color: #800080;">$_POST </span>['id']) && <span style="color: #008080;">file_exists</span>(<span style="color: #800080;">$dir</span>.'/'.<span style="color: #800080;">$_POST</span>['id'].<span style="color: #800080;">$_SESSION </span>['ext'<span style="color: #000000;">])) { </span><span style="color: #0000ff;">if</span>(<span style="color: #800080;">$_SESSION</span>['ext'] == '.jpg'<span style="color: #000000;">) { </span><span style="color: #800080;">$image</span> = imagecreatefromjpeg(<span style="color: #800080;">$dir</span>.'/'.<span style="color: #800080;">$_POST</span>['id'].<span style="color: #800080;">$_SESSION</span>[' ext'<span style="color: #000000;">]); } </span><span style="color: #0000ff;">if</span>(<span style="color: #800080;">$_SESSION</span>['ext'] == '.png'<span style="color: #000000;">) { </span><span style="color: #800080;">$image</span> = imagecreatefrompng( <span style="color: #800080;">$dir</span>.'/'.<span style="color: #800080;">$_POST</span>['id'].<span style="color: #800080;">$_SESSION</span>['ext'<span style="color: #000000;">]); } </span><span style="color: #0000ff;">if</span>(<span style="color: #800080;">$_SESSION</span>['ext'] == '.gif'<span style="color: #000000;">) { </span><span style="color: #800080;">$image</span> = imagecreatefromgif( <span style="color: #800080;">$dir</span>.'/'.<span style="color: #800080;">$_POST</span>['id'].<span style="color: #800080;">$_SESSION</span>['ext'<span style="color: #000000;">]); </span><span style="color: #0000ff;">else</span><span style="color: #000000;"> { </span><span style="color: #0000ff;">死ぬ</span>('指定的無效图像'<span style="color: #000000;">); }</span><span style="color: #800080;">$effect</span> = (<span style="color: #0000ff;">isset</span>(<span style="color: #800080;">$_POST</span>['effect'])) <span style="color: #800080;">$_POST</span>['effect'] ? : -1<span style="color: #000000;">; </span><span style="color: #0000ff;">スイッチ</span>(<span style="color: #800080;">$effect</span><span style="color: #000000;">) { </span><span style="color: #0000ff;">case</span> IMG_FILTER_NEGATE:<span style="color: #000000;"> imagefilter(<🎜) ></span>$image<span style="color: #800080;"> , IMG_FILTER_NEGATE); </span>//<span style="color: #008000;"></span>画像内のすべての色を反転します<span style="color: #008000;"> </span>break<span style="color: #0000ff;"></span>; case<span style="color: #000000;"> IMG_FILTER_GRAYSCALE:</span> imagefilter(<span style="color: #0000ff;"></span>$image<span style="color: #000000;"> , IMG_FILTER_GRAYSCALE); </span>//<span style="color: #800080;"></span>画像をグレースケールに変換します<span style="color: #008000;"> </span>break<span style="color: #008000;"></span>; <span style="color: #0000ff;"></span>case<span style="color: #000000;"> IMG_FILTER_EMBOSS:</span> imagefilter(<span style="color: #0000ff;"></span>$image<span style="color: #000000;"> , IMG_FILTER_EMBOSS);エンボス加工された画像</span> <span style="color: #800080;">break</span><span style="color: #008000;">; </span><span style="color: #008000;">case</span> IMG_FILTER_GAUSSIAN_BLUR:<span style="color: #0000ff;"> imagefilter(</span><span style="color: #000000;">$image</span> , IMG_FILTER_GAUSSIAN_BLUR ; テキストを印刷します<span style="color: #0000ff;"> </span>if<span style="color: #000000;">(</span>isset<span style="color: #800080;">(</span>$_POST<span style="color: #008000;">['emb_caption'</span>])) { <span style="color: #008000;"></span>/*<span style="color: #0000ff;"></span> array imagettftext ( resource $image , float $size , float $angle , int $x , int $y , int $color , string $fontfile , string $text ) $image 画像ソース $size フォント サイズ $angle inverse 時針回転角度 $fontfile フォントの種類 $text テキストの内容 <span style="color: #000000;"></span>*/<span style="color: #008000;"></span> imagettftext(<span style="color: #008000;"></span>$image<span style="color: #0000ff;"> , 12 , 0 , 20 , 20 , 0 , </span>$font<span style="color: #0000ff;"> , </span>$image_caption<span style="color: #800080;"></span>); } <span style="color: #000000;"></span>//<span style="color: #008000;"></span>画像の指定された位置にロゴを配置します<span style="color: #008000;"> </span> if<span style="color: #008000;">(</span>isset<span style="color: #000000;">(</span>$_POST<span style="color: #800080;">['emb_logo'</span>])) { <span style="color: #800080;"></span>//<span style="color: #800080;"></span>のサイズを取得ウォーターマーク画像を作成し、ウォーターマーク<span style="color: #000000;"> </span>list<span style="color: #008000;">(</span>$wmk_width<span style="color: #008000;"> , </span>$wmk_height<span style="color: #0000ff;">) = </span>getimagesize<span style="color: #0000ff;">('images/logo.png '</span>) ; <span style="color: #800080;"></span>//<span style="color: #000000;"></span>$x = ($width-$wmk_width) //$y = ($height-$wmk_height)/2; > <span style="color: #008000;">$ x</span> = <span style="color: #008000;">$width</span>-<span style="color: #0000ff;">$wmk_width</span><span style="color: #800080;">; </span><span style="color: #800080;">$y</span> = <span style="color: #008080;">$height</span>-<span style="color: #000000;"> $wmk_height</span><span style="color: #008000;">; </span><span style="color: #008000;">$wmk</span> = imagecreatefrompng('images/logo.png'<span style="color: #800080;">); ></span> 透かし画像と元の画像を結合します <span style="color: #800080;"> </span>/*<span style="color: #800080;"></span> 座標が 0, 0 から始まり、幅が $wmk_width で、wmk 画像の一部をコピーします$wmk_heightの高さからイメージ画像の座標までが$xと$yの位置になります。 2 つのイメージは、0 ~ 100 の範囲の pct=20 に基づいてマージされます。pct = 0 の場合、実際には何も行われません。100 の場合、この関数はパレット イメージの imagecopy() とまったく同じになります。トゥルーカラー イメージのアルファ透明度を実装します。</span><span style="color: #008000;">*/</span><span style="color: #000000;"> imagecopymerge(</span><span style="color: #800080;">$image</span> , <span style="color: #800080;">$wmk</span> , <span style="color: #800080;">$x</span> , <span style="color: #800080;">$ y</span> , 0 , 0 , <span style="color: #800080;">$wmk_width</span> , <span style="color: #800080;">$wmk_height</span> , 20<span style="color: #000000;">); </span><span style="color: #008000;">//</span><span style="color: #008000;">透かし画像をクリア</span> imagedestroy(<span style="color: #800080;">$wmk</span><span style="color: #000000;">); } </span><span style="color: #008000;">//</span><span style="color: #008000;">サムネイルサイズ</span> <span style="color: #800080;">$thumb_width</span> = <span style="color: #800080;"> $width</span> * 0.10<span style="color: #000000;">; </span><span style="color: #800080;">$thumb_height</span> = <span style="color: #800080;">$height</span> * 0.10<span style="color: #000000;">; >サムネイルを作成します</span> <span style="color: #008000;">$thumb</span> = imagecreatetruecolor(<span style="color: #008000;">$thumb_width</span>, <span style="color: #800080;">$thumb_height</span><span style="color: #800080;">); </span>、<span style="color: #800080;">$image</span>、0、0、0、0、<span style="color: #000000;">$thumb_width</span>、<span style="color: #800080;">$thumb_height</span>、<span style="color: #800080;">$width</span>、<span style="color: #800080;">$height</span><span style="color: #800080;">); </span><span style="color: #800080;">//</span><span style="color: #800080;">サムネイルを保存</span> <span style="color: #000000;">if</span>(<span style="color: #008000;">$_SESSION</span>[ 'ext' ] == '.jpg'<span style="color: #008000;">) { imagejpeg(</span><span style="color: #0000ff;">$thumb</span>, <span style="color: #800080;">$thumbdir</span> . '/' . <span style="color: #000000;">$_POST</span> ['id '] . <span style="color: #800080;">$_SESSION</span>['ext'], 100<span style="color: #800080;">); } </span><span style="color: #800080;">if</span>(<span style="color: #800080;">$_SESSION</span>['ext' ] == '.png'<span style="color: #000000;">) {</span> imagepng(<span style="color: #0000ff;">$thumb</span>, <span style="color: #800080;">$thumbdir</span> . '/' . <span style="color: #000000;">$_POST</span>['id '] . <span style="color: #800080;">$_SESSION</span>['ext'<span style="color: #800080;">]); } </span><span style="color: #800080;">if</span>(<span style="color: #800080;">$_SESSION</span>['ext'] == '.gif'<span style="color: #000000;">) { imagegif(</span><span style="color: #0000ff;">$thumb</span>, <span style="color: #800080;">$thumbdir</span> . '/' . <span style="color: #000000;">$_POST</span>['id'] . <span style="color: #800080;">$_SESSION </span>['ext'<span style="color: #800080;">]); } </span><span style="color: #800080;">echo</span> "変更されたサムネイル: <img src='"."images/thumbs/" . >['id'] . <span style="color: #800080;">$_SESSION</span>['ext']."' alt='' /> <br />"<span style="color: #000000;">; 🎜></span>サムネイルをクリア<span style="color: #0000ff;"> imagedestroy(</span>$thumb<span style="color: #800080;"></span>); <span style="color: #800080;"></span>//<span style="color: #000000;"></span>元の画像を保存<span style="color: #008000;"> </span>if<span style="color: #008000;">(</span>$_SESSION<span style="color: #800080;">['ext'] == '.jpg'</span>) { imagejpeg(<span style="color: #000000;"></span>$image<span style="color: #008000;"> , </span>$dir<span style="color: #008000;">. '/'.</span>$_POST<span style="color: #0000ff;">['id'].</span>$_SESSION<span style="color: #800080;">['ext'] , 100</span>); } <span style="color: #000000;"></span>if<span style="color: #800080;">( </span>$_SESSION<span style="color: #800080;">['ext'] == '.png'</span>) { <span style="color: #800080;"></span>//<span style="color: #800080;"></span>圧縮レベルは 0 ~ 9 の png ファイルである必要があります <span style="color: #000000;"> imagepng(</span>$image<span style="color: #0000ff;"> , </span>$dir<span style="color: #800080;">.'/'.</span>$_POST<span style="color: #000000;">['id'].</span>$ _SESSION<span style="color: #008000;">['ext' </span>]);<span style="color: #0000ff;">if</span>(<span style="color: #800080;">$_SESSION</span>['ext'] == '.gif'<span style="color: #000000;">) { imagegif(</span><span style="color: #800080;">$image</span> , <span style="color: #800080;">$dir</span>.'/'.<span style="color: #800080;">$_POST</span>['id'].<span style="color: #800080;">$_SESSION</span>['ext'<span style="color: #000000;">]); } </span><span style="color: #0000ff;">echo</span> "変更された大きな画像: <img src='"."images/" . <span style="color: #800080;">$_POST</span>['id'] . <span style="color: #800080;">$_SESSION</span>['ext '] ."' alt='' /> <br />"<span style="color: #000000;"> </span>?> <head> あなたの写真はここにあります! </title> </head> <h1> 写真が保存されました。 </h1> <img src="images/<?php echo <span style="color: #800080;">$_POST</span>['id'];?>.jpg" alt="" /> </html> <?<span style="color: #000000;">php } </span><span style="color: #0000ff;">else</span><span style="color: #000000;"> { </span>?> <html> あなたの写真はここにあります! </title> </head> <p> サーバーにアップロードした画像は次のとおりです: </html> <span style="color: #000000;"></span>if<span style="color: #0000ff;">(</span>$_POST<span style="color: #800080;">['submit'] == 'アップロード'</span>) { <span style="color: #000000;"></span>$imagename<span style="color: #800080;"> = 'images/' .</span>$image_id<span style="color: #800080;">.</span>$_SESSION<span style="color: #800080;">['ext'</span>] } <span style="color: #000000;"></span>else<span style="color: #0000ff;"></span> { <span style="color: #000000;"></span>$imagename <span style="color: #800080;"> = 'image_effect.php?id='.</span>$image_id<span style="color: #800080;">.'&e='.</span>$_POST<span style="color: #800080;">['effect'</span>]; if<span style="color: #000000;">(</span>isset<span style="color: #0000ff;">(</span>$_POST<span style="color: #0000ff;">['emb_caption'</span>])) { <span style="color: #800080;"></span>$imagename<span style="color: #000000;"> .= '&capt='。 </span>urlencode<span style="color: #800080;">(</span>$image_caption<span style="color: #008080;"></span>); } <span style="color: #800080;"></span>if<span style="color: #000000;">(</span>isset<span style="color: #0000ff;">(</span>$_POST<span style="color: #0000ff;">[ 'emb_logo'</span>])) { <span style="color: #800080;"></span>$imagename<span style="color: #000000;"> .= '&logo=1'</span> } } <span style="color: #800080;">?<?php <🎜; >echo</span> "src:".<span style="color: #000000;">$imagename</span> ?> <img src="<?php echo <span style="color: #0000ff;">$imagename</span>;?>" :left;" alt="" /> <table> <tr> <td>画像を<span style="color: #800080;">として</span>として保存:</td> <td><?php <span style="color: #800080;">echo </span> "映画サイト データベースの画像テーブル番号 ".<span style="color: #0000ff;">$image_id</span> ." OK! " ;?></td> </tr> <tr> <td>高さ:</td> <td><?php <span style="color: #0000ff;">echo</span> <span style="color: #800080;">$height </span>;?><span style="color: #0000ff;"> </span>; <span style="color: #800080;"> </span> $width<span style="color: #0000ff;">;?> </tr> <td></span>日付<span style="color: #800080;">:<td><?php 🎜>echo</span> <span style="color: #008080;">$image_date</span>;?></td> </table> 以下のオプションのリストからこれを画像に適用できます。特殊効果。注: いずれかのフィルタの使用は、画像を保存することで元に戻すことができます<em></em></p> <form action="<?php echo <span style="color: #800080;">$_SERVER</span>['PHP_SELF' ];?>" method="post"> <input type="hidden" name="id" value="<?php echo <span style="color: #800080;">$image_id</span>;?>"/> <select name="effect" id=""> <option value="-1">そのままにする<?<span style="color: #000000;">php </span><span style="color: #0000ff;">echo</span> ' <option value="'.IMG_FILTER_GRAYSCALE.'" '<span style="color: #000000;">; </span><span style="color: #0000ff;">if</span>(<span style="color: #0000ff;">isset</span>(<span style="color: #800080;">$_POST</span>['effect']) && <span style="color: #800080;">$_POST</span>['effect'] ==<span style="color: #000000;"> IMG_FILTER_GRAYSCALE) { </span><span style="color: #0000ff;">echo</span> 'selected="selected"'<span style="color: #000000;"> } </span><span style="color: #0000ff;">; echo</span> ' >グレースケール画像</option>'<span style="color: #000000;">; </span><span style="color: #0000ff;">echo</span> '<option value="'.IMG_FILTER_GAUSSIAN_BLUR.'"<span style="color: #000000;">; 🎜>if</span>(<span style="color: #0000ff;">isset</span>(<span style="color: #0000ff;">$_POST</span>['effect']) && <span style="color: #800080;">$_POST</span>['effect'] ==<span style="color: #800080;"> IMG_FILTER_GAUSSIAN_BLUR) { </span><span style="color: #000000;">echo</span> ' selected="selected"'<span style="color: #0000ff;"> } </span><span style="color: #000000;">echo</span> '>ガウス アルゴリズムぼかし画像</option>'<span style="color: #0000ff;">; 🎜></span>echo<span style="color: #000000;"> '</span><span style="color: #0000ff;">if</span>(<span style="color: #000000;">$ _POST</span>['effect']) && <span style="color: #0000ff;">$_POST</span>['effect'] ==<span style="color: #0000ff;"> IMG_FILTER_EMBOSS) { </span><span style="color: #800080;">echo</span> 'selected="選択済み "'<span style="color: #800080;">; } </span><span style="color: #000000;">echo</span> '>画像エンボス</option>'<span style="color: #0000ff;">; </span><span style="color: #000000;">echo</span> '<option value=" '.IMG_FILTER_NEGATE.' "'<span style="color: #0000ff;">; </span><span style="color: #000000;">if</span>(<span style="color: #0000ff;">isset</span>(<span style="color: #000000;">$_POST</span>['effect']) && <span style="color: #0000ff;">$_POST </span>['効果'] ==<span style="color: #0000ff;"> IMG_FILTER_NEGATE) { </span><span style="color: #800080;">echo</span> 'selected="selected"'<span style="color: #800080;"> } </span><span style="color: #000000;">echo</span> '> ;すべての色を反転しますimage</option>'<span style="color: #0000ff;">?> </select><br /> <?</span>php <span style="color: #000000;"></span>echo<span style="color: #0000ff;"> '<input type= "checkbox" name="emb_caption"'</span>; <span style="color: #000000;"></span>if<span style="color: #000000;">(</span>isset<span style="color: #0000ff;">(</span>$_POST<span style="color: #000000;">['emb_caption '</span>])) { <span style="color: #0000ff;"></span>echo<span style="color: #0000ff;"> 'checked="checked"'</span> } <span style="color: #800080;"></span>echo<span style="color: #000000;"> ' /> 画像のタイトルを埋め込むかどうか'<span style="color: #000000;">; </span><span style="color: #0000ff;">エコー</span> '<br />'<span style="color: #000000;">; </span><span style="color: #008000;">//</span><span style="color: #008000;">透かしオプションを追加します</span> <span style="color: #0000ff;"> echo</span> '<input type="checkbox" name="emb_logo" '<span style="color: #000000;"></span><span style="color: #0000ff;">if</span>(<span style="color: #0000ff;">isset</span>(<span style="color: #800080;">$_POST</span>) ['emb_logo'<span style="color: #000000;">])) { </span><span style="color: #0000ff;">echo</span> 'checked="チェック済み"'<span style="color: #0"></span></span></span>