• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MySQL+PHP操作その4)

MySQL+PHP操作その4

このQ&Aのポイント
  • ファイルから取り込んだ画像をサーバーに保存する方法について
  • 画像ファイルの表示とデータ容量を一緒に取得する方法について
  • 拡張子に関係なく画像ファイルを表示する方法について

質問者が選んだベストアンサー

  • ベストアンサー
  • kusukusu
  • ベストアンサー率38% (141/363)
回答No.1

$uploadfile と言うのは何でしょうか? 通常は、 $_FILES['userfile']['name']:元のファイル名。 $_FILES['userfile']['type']:ファイルのMIME型。 $_FILES['userfile']['size']:ファイルサイズ。 と言った具合に配列 $_FILE['userfile']の配列として所持しています。 UPLOADすると同時にファイルサイズを取得できます。 って、私何か勘違いしてますかねぇ?(^^;

39jin
質問者

補足

う~ん これから試してみます。 あなた様の御貯金は千円以内ですよ・、は解って預けました あなた様への払い戻し額八百円を払い戻しましたよ・、が知りたいのです まだ始めたばかりです 解説書のサンプルで動作しているものを改造しています 定義づけ等の知識もなく理解に苦しんでいます php.iniファイルの中に file_uploads = ON、容量max2Mの記述はあります ダウンロードして、表示が出来ている画像を中央で表示するか、左に寄せるかを容量で判断して切り替えたいのです if (strlen($col["imgfilename"]) > 0) { ->名前が登録されていれば払い戻し可 if 画像容量による判断 < 15000) { ->"imgfilename"の容量が幾らでしたから $body .= "<IMG src='upload/". $col["imgfilename"] . "' align='left'>"; //15KB以下は画像左で説明文章は回り込み許可 }else{ $body .= "<center><IMG src='upload/". $col["imgfilename"] . "' vspace='2'><BR clear='all'></center>"; //15KB以上では画像中央で説明文章は下側に表示

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • アップロードしたファイルの移動→表示

    ホームページ上でフォームからアップロードしたファイルを imageディレクトリ下に移動させて、 そのファイルを確認用にブラウザに表示させたいのですが 下記のプログラムではファイルの移動ができていないようで、 表示されず困っています。 $uploadfile = $_FILES['uploadfile']; move_uploaded_file($uploadfile, "image/$imagefile"); $body = "<IMG src='image/$imagefile' width='240' height='180'>"; 皆様どうかご指導お願いします。

    • ベストアンサー
    • PHP
  • リサイズした後の画像の表示ができません

    お世話になっています。 登録画面でアップロードした画像を確認画面でサイズを小さくしてから Mysqlに保存するようなものを作っています。 アップロードした画像を縮小せずそのままなら表示、登録することはできましたが、 縮小したあとの画像が確認画面で表示できません。 画像の名前を変更し、フォルダに移動しています。 $smlwidth = 200; $smlheight = 150; $smlphotofile =""; $imagefile = substr($mictime, 11) . substr($mictime,2,6) . ".jpg"; $infimgfile = getimagesize($uploadfile); $srcimgfile = imagecreatefromjpeg($uploadfile); $newimgfile = imagecreatetruecolor($smlwidth, $smlheight); imagecopyresampled($newimgfile, $srcimgfile,0, 0, 0, 0, $smlwidth, $smlheight,$infimgfile[0], $infimgfile[1]); if (!move_uploaded_file($newimgfile, "$PHOTOTMP$imagefile")) { $errmsg .= "写真ファイルのアップロードに失敗しました。<BR>";} 省略 print"<IMG src='$PHOTOTMP$imagefile' >"; 確認画面では「×」となっています。画像のプロパティを見ると、 フォルダへの移動はうまくいっているようなのですが、 種類やサイズが使用不可となっています。 どなたかご教授いただけませんでしょうか。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • PHPで複数の画像を同時にアップロードする方法

    OS = WINXP Pro SP2、Server = An Httpd、PHP = PHP5の環境にてDevelopmentしております。 質問です。PHPで複数の画像を同時にアップロードする方法が知りたいです。現在、jpg,png,bmp,gifを アップロード可能にしているのですが、同時に5つまで10MB以内でUploadできるようにしたいのですが、 if(strlen($uploadfile) > 0 ) { $fileinfo = pathinfo($uploadfile_name); $fileext = strtoupper($fileinfo["extension"]); if ($uploadfile_size > 10002400) { $errmsg .= "<font color='#555555'>画像ファイルのサイズが大きすぎます。3MB以下にしてください。<BR>"; } elseif ($uploadfile_size == 0) { $errmsg .= "<font color='#555555'>画像ファイルが存在しないか空のファイルです。</font><BR>"; } if (($fileext=='JPG')||($fileext=='GIF')||($fileext=='BMP')||($fileext=='PNG')){ if ($fileext == "JPG") { $mictime = microtime(); $imgfilename = substr($mictime, 11) . substr($mictime, 2, 6) . ".jpg"; chmod($uploadfile,0755); if (!move_uploaded_file($uploadfile, "upload/$imgfilename")) { $errmsg .= "<font color='#555555'>ファイルのアップロードに失敗しました。</font><BR>"; } } ... この様な感じで現在はやっていますが、これのどの様に変更すれば同時にアップロードできるようになるのでしょうか。どうぞ宜しくお願い致します。

    • ベストアンサー
    • PHP
  • 初心者ですみません。画像ファイルのアップロードについて

    任意の画像ファイルをHTMLフォームで入力して 登録確認画面に渡した後、ファイルをアップロード したいのですが上手くいきません。 ・フォーム入力ページ <FORM action="登録確認ページ.php" method="POST" enctype="multipart/form-data"> <INPUT type="file" name="uploadfile" size="50"> <INPUT type="submit" name="reg" value="OK"> ↓ ・登録確認ページ $uploadfile = $_FILES['uploadfile']; move_uploaded_file($uploadfile, "$PHOTOTMP$imagefile"); $body .= "<IMG src='$PHOTOTMP$imagefile' width='240' height='180'>"; として、登録確認ページでアップロードする 画像ファイルをいったん表示させてから 最終的にアップロードさせたいのですが 「×」マークが出て画像が表示されません。 データの受け渡しが上手くできていないのでしょうか。 どなたか教えて下さい。よろしくお願いします。

    • ベストアンサー
    • PHP
  • ファイルのアップロード mysql

    現在PHPを使いファイルのアップロードをしようとしているのですが 途中でいきずまってしまいました。自分がしたいことですが フォームからファイル(画像:jpgのみ)をMYSQLにアップロードし、必要に応じてその画像を出力するということです。また画像のサイズも決めてそれ以上ならエラーを出すということです。こちらが今あるスクリプトになります。 途中まではなんとなく分かったのですがどうしても続きが分かりません。 ちなみにphp.iniの設定は色々調べたのであっていると思います。 またMYSQLのカラムはBLOBになっており、下記にinsert into~の文もあります。 form.php <form name="order" action="form.php" method="post" enctype="multipart/form-data"> <input name="MAX_FILE_SIZE" type="hidden" value="1000000" /> <input name="uploadfile" type="file" size="60" /> </form> <?php $uploadfile_name = $_FILES["uploadfile"]["name"]; $uploadfile_tmp_name = $_FILES["uploadfile"]["tmp_name"]; $uploadfile_size = $_FILES["uploadfile"]["size"]; if (strlen($uploadfile_name) > 0 ) { $fileinfo = pathinfo($uploadfile_name); $fileext = strtoupper($fileinfo["extension"]); $err_msg = ""; //ファイルのサイズチェック if ($uploadfile_size > 1000000 ) { $err_msg .= "テキストファイルが大きすぎます。1MB以下にして下さい。<br />"; } //ファイルの拡張子チェック elseif ($fileext != "jpg") { $err_msg .= ".jpg形式以外のファイルは登録できません。<br />"; } if( //どのようにしれMYSQLに保存するのかここら辺から分からなくなっています。 } } } $sql = "insert into ccc values('$upload_file')"; どなたかご存知の方おりましたらお伺い出来ませんでしょうか。 宜しくお願い致します。

    • 締切済み
    • PHP
  • PHP MySqlでの複数画像アップロード

    ご質問させていただきます。 複数画像をアップロードするには以下のようなかたちになると思いますが、 画像ファイルを保存するところまでは出来たのですが、同時に画像ファイル名をDBに登録出来ればと考えています。 以下の場合、nameが同一になるので3つのカラム(img1,img2,img3)にそれぞれ登録するにはどのようにすればいいでしょうか? <input type="file" name="uploadfile[]" /> <input type="file" name="uploadfile[]" /> <input type="file" name="uploadfile[]" />

    • ベストアンサー
    • MySQL
  • PHPでファイルのアップロード

    OSはLinuxのfedoraを利用しており、WebサーバーソフトはApacheを利用しています。 PHPを使って、クライアントからサーバーにファイルのアップロードをしたいのですが、プログラミングがあまり理解できておらず、アップロードができません。ちなみにphp.iniファイルの設定に関しては、アップロードは受け付けるようにしていますし、設定にミスはないと思います。 sample.phpというファイル名で下記のファイルを作ってみたのですが、アップロードすることができませんでした。まだPHPは初心者で間違いだらけだと思うのですが、こうすればアップロードできるようになるといった指摘をお願い致します。 <html> <head> <title> </title> </head> <body> <form enctype="multipart/form-data" action="sample.php" method="POST"> <input type="hidden" name="MAX_FILE_SIZE" value="30000"> Send this file: <input name="userfile" type="file"> <input type="submit" value="Send File"> </form> <?php if(isset($uploadfile) and is_uploaded_file($uploadfile)) { if(move_uploaded_file($uploadfile, $path . "/var/www/html/test/" . $uploadfile_name)){ print("<br>Uploaded file saved."); }else{ print("<br>Uploaded file save failed."); } } ?> </body> </html>

    • ベストアンサー
    • PHP
  • ファイルのアップロードの方法をお教えください

    初心者で困っております。何卒よろしくお願いいたします。 次のHTMLで画像をアップし、受け側のPHPで保存しようとしていますが、どうしてもエラーになってしまいます。 何もわかりませんもので、解決の方法を教えていただければ幸いです。 ファイルの送り側のHTMLファイル <html> <form action="upload_save_test1.php" method="POST" enctype="multipart/form-data"> <input type="file" name="uploadfile" size="60"> <input type="submit" name ="reg" value="登録"> </form> </html> 受け側のupload_save_test1.php <?php if(!move_uploaded_file($uploadfile,"tem.jpg")){ print "保存に失敗しました"; } ?> 何か根本的な問題なのでしょうか?

    • ベストアンサー
    • PHP
  • DBにphp画像格納

    画像保存用ソース if($_FILES['imagefile']['error']) exit;$mime = $_FILES['imagefile']['type'];//mime type$path = $_FILES['imagefile']['tmp_name'];//uploaded fileif($mime=='image/pjpeg') $mime='image/jpeg';if($mime=='image/x-png') $mime='image/png';if(is_uploaded_file($path)){$mime = addslashes($mime);$data = addslashes(file_get_contents($path));//一時ファイルの読み込み$sql = "insert into image_table (mime,data) values ('$mime','$data')";$db->query($sql);//略記} 表示用ソース //image.php$id = intval($_GET['id']);$sql = "select * from image_table where id=$id";if($image = $db->findone($sql))//1レコード取得(略記){header("Content-type: ".$image['mime']);echo stripslashes($image['data']);} それぞれ、どこを変更して記述する必要がありますか?? DB名sample テーブル名dbdb パスワードhogehogeと仮定した場合。

    • 締切済み
    • PHP
  • phpにてファイルをアップロード2

    先日質問させていただいたものなんですが、本やサイトを参考にして、以前とは違ったphpを使用してファイルをアップロードしようと考えています。 <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=Shift_JIS"> <title><?php echo basename($PHP_SELF);?></title> </head> <body> <p>ファイルアップロード</p> <form method="POST" action="gazou_upload.php" enctype="multipart/form-data"> <input type="file" name="uploadfile"> <input type="submit" value="送信"> </form> <?php if(isset($uploadfile)) { // アップロードされたファイルのサイズを確認 if($uploadfile_size <= 2097152) { // 移動 $moveto = "/public_html/img" . basename($uploadfile_name); move_uploaded_file($uploadfile, $moveto) or die("アップロード失敗\n"); print "<p>ファイルをアップロードしました。 - $moveto</p>"; } } ?> </body> </html> 上記を使おうと思っているのですが、これを使用した場合、 (1)上記をhtmlとしておくだけで、ファイルのアップが可能になるのか?phpも必要ですよね? (2)この場合アップされたファイルはドコに保存されるのか?…僕はpublic_htmlの中のimgというフォルダに移動して欲しいのですが。 皆様お手数ですが、教えていただけないでしょうか? よろしくお願いします。

    • ベストアンサー
    • PHP