アップロードした画像/ドキュメントのサムネイル画像を、ファイルアップロードボタンが表示されているページと同じページに表示したいとします。 助けてください私はアマチュアコーダーです、ありがとう。アップロードされたドキュメントのサムネイルをPHPで入手する方法
答えて
まず、PDF、Word文書、MP3、ビデオなどのドキュメントのサムネイルなどは存在しないことを理解しておく必要があります。つまり、自分でサムネイルを作成する必要があります。
第2に、アップロードされた画像のサムネイルを表示するには、同じ画像のサムネイルをサイズ変更して明示的に作成する必要があります。それ以外の場合は、アップロードされたファイルをサーバーに移動するだけで元のファイルが移動されます。そのままですサイズ変更せずに。
フレームワークを使用していない場合や、CodeBaseで画像処理ライブラリにアクセスできない場合は、WideImageをチェックアウトしてください。 Composer経由でWideImageをプロジェクトに含めるにはtry this Link。アップロードしたファイルのサイズ変更に役立ちます。他にもあります。あなたはちょうどあなた自身の少しの研究をしなければならないかもしれません....
最後に、インスタントフィードバック(アップロードされたドキュメントのサムネイル表示)が必要な場合は、AJAXを利用する必要があります。これには、次のことを意味する非同期操作を実行する利点があります。ドキュメントをアップロードし、アップロードが完了したら、サムネイルが瞬時にページに表示されます。
AJAXについてよくわからない場合は、AJAX Tutorial Websiteにアクセスする必要があります。
よく、これは役に立ちます。
define ("MAX_SIZE","4000");
function getExtension($str) {
$i = strrpos($str,".");
if (!$i) { return ""; }
$l = strlen($str) - $i;
$ext = substr($str,$i+1,$l);
return $ext;
}
$errors=0;
$image =$_FILES["upload_field_name"]["name"];
$uploadedfile = $_FILES['upload_field_name']['tmp_name'];
if ($image)
{
$filename = stripslashes($_FILES['upload_field_name']['name']);
$extension = getExtension($filename);
$extension = strtolower($extension);
if (($extension != "jpg") && ($extension != "jpeg") && ($extension != "png") && ($extension != "gif"))
{
echo"<script>alert('Unknown Image extension');</script>";
die;
$errors=1;
}
else
{
$size=filesize($_FILES['upload_field_name']['tmp_name']);
if ($size > MAX_SIZE*1024)
{
echo"<script>alert('You have exceeded the size limit!');</script>";
die;
$errors=1;
}
if($extension=="jpg" || $extension=="jpeg")
{
$uploadedfile = $_FILES['upload_field_name']['tmp_name'];
$src = imagecreatefromjpeg($uploadedfile);
}
else if($extension=="png")
{
$uploadedfile = $_FILES['upload_field_name']['tmp_name'];
$src = imagecreatefrompng($uploadedfile);
}
else
{
$src = imagecreatefromgif($uploadedfile);
}
list($width,$height)=getimagesize($uploadedfile);
$newwidth=60;
$newheight=($height/$width)*$newwidth;
$tmp=imagecreatetruecolor($newwidth,$newheight);
$newwidth1=30;
$newheight1=($height/$width)*$newwidth1;
$tmp1=imagecreatetruecolor($newwidth1,$newheight1);
imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,$width,$height);
imagecopyresampled($tmp1,$src,0,0,0,0,$newwidth1,$newheight1,$width,$height);
$obj = mysql_fetch_object(mysql_query("SELECT MAX(id) as kk FROM your_table_name"));
$i = $obj->kk;
$i = $i+1;
$newname = 'dp'.$i.'.jpg';
rename($_FILES['upload_field_name']['name'], $newname);
$filename = "folder_name/".$newname;
$filename1 = "folder_name/small".$newname;
imagejpeg($tmp,$filename,100);
imagejpeg($tmp1,$filename1,100);
imagedestroy($src);
imagedestroy($tmp);
imagedestroy($tmp1);
}}
楽しい時間を過ごしてください。
のjQuery CODE:
$(function() {
$("#uploadFile").on("change", function()
{
var files = !!this.files ? this.files : [];
if (!files.length || !window.FileReader) return; // no file selected, or no FileReader support
if (/^image/.test(files[0].type)){ // only image file
var reader = new FileReader(); // instance of the FileReader
reader.readAsDataURL(files[0]); // read the local file
reader.onloadend = function(){ // set image data as background of div
$("#imagePreview").css("background-image", "url("+this.result+")");
}
}
});
});
HTMLコード
<div id="imagePreview"></div>
<input id="uploadFile" type="file" name="image" class="img" />
CSSスタイル:
<style>
#imagePreview {
width: 180px;
height: 180px;
background-position: center center;
background-size: cover;
-webkit-box-shadow: 0 0 1px 1px rgba(0, 0, 0, .3);
display: inline-block;
}
</style>
jQueryの
<script type="text/javascript">
$(function() {
$("#uploadFile").on("change", function()
{
var files = !!this.files ? this.files : [];
if (!files.length || !window.FileReader) return; // no file selected, or no FileReader support
if (/^image/.test(files[0].type)){ // only image file
var reader = new FileReader(); // instance of the FileReader
reader.readAsDataURL(files[0]); // read the local file
reader.onloadend = function(){ // set image data as background of div
$("#imagePreview").css("background-image", "url("+this.result+")");
}
}
});
});
</script>
上記のjQueryは、ファイルアップロードフィールドのonChangeイベントを処理し、与えられたdivのバックグラウンドでイメージを追加します。
HTML:我々はプレビューした画像のdivに使用
<div id="imagePreview"></div>
<input id="uploadFile" type="file" name="image" class="img" />
CSSサムネイル:すべてです CSS
<style>
#imagePreview {
width: 180px;
height: 180px;
background-position: center center;
background-size: cover;
-webkit-box-shadow: 0 0 1px 1px rgba(0, 0, 0, .3);
display: inline-block;
}
</style>
:
- 1. Pythonできれいにフォーマットされたドキュメントを入手する方法
- 2. PHPでユーザエージェントを入手する方法
- 3. ローカライズされたCFBundleDisplayNameの入手方法
- 4. ココアポッドでジャズスタイルのドキュメントを入手する方法
- 5. メディアを入手する:XMLのサムネイル
- 6. MongoDBで更新されたドキュメントを入手
- 7. アップロードされたファイルのデータをjavacriptで入手
- 8. アップロードされた画像のサムネイルをPHPで作成できません
- 9. PHPでオンザフライで生成されたサムネイルをエコーする方法は?
- 10. アップロードされたドキュメントは、
- 11. 返されたSolrドキュメントを表示するためのJquery Autocompleteプラグインの入手方法?
- 12. Apache CommonsでファイルをアップロードするためのJSFの入手方法FileUpload
- 13. Couchbase v2.0でドキュメントを入手
- 14. ビデオのアップロード時にサムネイルの作成方法は? [php/codeigniter]
- 15. 最後に作成したドキュメントをcouchdbで入手する方法は?
- 16. 前月に投稿されたファイルを入手する方法
- 17. Railsでアップロードされたファイルのプレビュー画像のサムネイルを生成
- 18. PHP - 新しく作成されたユーザーからの情報の入手方法
- 19. javaで作成された日付画像の入手方法
- 20. ZF2で追加されたフォームエラーメッセージの入手方法?
- 21. 入手方法Drupalで翻訳されたコンテンツへのリンク8
- 22. Docusignスタンプ/アップロードされたドキュメントのファイル名
- 23. Gitでコミットされた最新のファイルを入手する方法
- 24. サムネイルとドラッグアンドドロップで複数の画像をアップロードするPHP
- 25. ドキュメントDBに複数のドキュメント(バルク)をアップロードする方法
- 26. 入手方法入手方法AzureでのWebテストのSLAレポート
- 27. URLで指定されたドキュメントをバイト配列にアップロードする
- 28. Crystal ReportsとアップロードされたPDFドキュメント
- 29. メテオファイルでアップロードされたファイルはどこから入手できますか?
- 30. アップロードされた画像のサムネイルを作成
あなたがそうしようとしているかを示すためにあなたの質問を編集してください遠い問題を抱えているコードの最小、完全、および検証可能な例を含める必要があります。次に、特定の問題の解決に役立てることができます。 How to Ask- http:// stackoverflowも読んでください。com/help/how-to-ask – Atf
多くの人に感謝しますが、jqueryアップローダを使用した後、私の問題を解決しました。 – Mandy