勉強したことのメモ

webプログラマが勉強したことのメモ。

画像登録用のfunction

      2014/07/03

<?php
/******
画像アップロード用function
画像送付側には↓↓で呼び出す。
if ($_FILES) {
    $mess = Image_uplode($_FILES, $file_path, $exts);
}
画像送付部分は↓↓な感じ。
<form action="./index.php" method="post" enctype="multipart/form-data">
    画像1:<input type="file" name="image1"><br>
    画像2:<input type="file" name="image2"><br>
    画像3:<input type="file" name="image3"><br>
    <input type="submit" name="submit">
</form>
また、↓↓で結果を返せる。
<? if(isset($mess)) echo $mess;?>
******/

//画像用変数
$exts = array(
1=>".jpg",
2=>".png",
3=>".gif");
$file_path = 'aaa/bbb/ccc/images'; //ファイルパス

//ランダムな英数字作成function
function Random($length) {
$str = array_merge(range('a', 'z'), range('0', '9'), range('A', 'Z"'));
for ($i = 0; $i < $length; $i++) {
$r_str .= $str[rand(0, count($str)-1)];
}
return $r_str;
}

//画像アップロード用function
function Image_uplode($image,$file_path, $exts) {
for($i=1; $i<=count($image); $i++) { //fileの数だけループ
if ($image["image{$i}"]["size"] > 0) { //サイズが1以上あれば内容を調べる
if ($image[$i] != UPLOAD_ERR_OK) { //エラーチェック
echo "エラーが発生しました : ".$image["image{$i}"]["error"];
exit;
}
$image_ext_check = getimagesize($image["image{$i}"]["tmp_name"]); //拡張子チェック用
if($image_ext_check['mime'] == 'image/jpeg' || $image_ext_check['mime'] == 'image/jpg')    {
$ext = '.jpg';
} elseif ($image_ext_check['mime'] == 'image/png') {
$ext = '.png';
} elseif ($image_ext_check['mime'] == 'image/gif') {
$ext = '.gif';
} else {
echo 'jpeg/jpg/png/gif画像でアップロードして下さい';
exit;
}
$image_file_pass = $file_path . '/' . Random(5) . $ext; //画像名をランダムに決める
$rs = move_uploaded_file($image["image{$i}"]["tmp_name"], $image_file_pass); //画像のアップ処理
$mess .= (!$rs) ? "画像{$i}が正常にアップロードできませんでした。" : "画像{$i}が正常にアップロードできました。<br>";
}
}
return $mess;
}

 - PHP, 画像

  関連記事

DTIのVPSにCakePHPを導入する方法

他社さんと連携して仕事をする際に「フレームワーク何か使いますか?」と聞かれて「使 ...

フォームからzipファイルをアップロードしサーバ上で解凍したい

formからzipファイルをアップロードし、サーバ上で解凍したかった。またアップ ...

Basic認証がかかっているファイルをPHPで認証突破と取得

Aというサイトにあるベーシック認証がかかっているディレクトリ内のファイルを、Bと ...

jquery.snipeの使い方

使い方によっては面白くなりそう。 ■jquery.snipe http://ra ...

Opauthで「Please change the…」エラー

Opauthを使用中に「Notice: Please change the va ...

CodeIgniterでログをファイルに出力する

Codeigniterで何らかのエラーが発生した際に分かりやすい形でファイルに情 ...

PHPの連想配列と正当性のチェック

ソースの解析中、こんな書き方があったのか、 と思ったのでメモ。 $List = ...

MySQLから任意の順番で取り出す

SELECT * FROM テーブル名 WHERE seq =  $seq OR ...

PHPの条件式でまとめて評価

PHPのソースで、 if( !($hoge || $fuga || $foo) ...

PHPで配列に特定の値が入っているか検索

PHPで配列に特定の値が入っているか検索して trueかfalseを返したい、と ...