ホームページ  >  記事  >  バックエンド開発  >  アプリに画像をアップロードする方法と、それをphpで受信して処理する方法(TPを使用)を教えてください

アプリに画像をアップロードする方法と、それをphpで受信して処理する方法(TPを使用)を教えてください

WBOY
WBOYオリジナル
2016-06-23 13:32:391958ブラウズ

好了 インターネットで色々な情報を確認してみてください。 tp 自体に付属するアップロード クラスをインターフェイスに変更します


class UserAction extends Action{		//添加		public function add(){			// var_dump(uniqid().(time().rand(0,100)));			// die();			import('ORG.Net.UploadFile');                        $upload = new UploadFile();// 实例化上传类            $upload->maxSize  = 3145728 ;// 设置附件上传大小            $upload->allowExts  = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型            //$upload->saveRule = uniqid;//这个是改变图片名称的,可同时改变多张图片的名称,实现图片的不同名 这样也就不会出现覆盖的现象了            $upload->saveRule='mytime';            $upload->savePath =  './Public/Uploads/';// 设置附件上传目录            if(!$upload->upload()) {// 上传错误提示错误信息                $this->error($upload->getErrorMsg());            }else{// 上传成功 获取上传文件信息                $info =  $upload->getUploadFileInfo();            }            $user   =   M('user');            $user->create(); // 创建数据对象            $user->user_pic = "http://".$this->_server('HTTP_HOST').'/Public/Uploads/'.$info[0]['savename']; // 保存上传的照片根据需要自行组装            $user->user_idcard = "http://".$this->_server('HTTP_HOST').'/Public/Uploads/'.$info[1]['savename'];            $user->user_card = "http://".$this->_server('HTTP_HOST').'/Public/Uploads/'.$info[2]['savename'];            //$user->piclink = "http://".$this->_server('HTTP_HOST').'/Public/Uploads/'.$info[0]['savename']; //                         //$user->time =  date('Y-m-d H:i:s',time());            $user->add();            // echo $flash->getlastsql();            // die();            $this->success("数据保存成功!");  				}



テスト方法 データをシミュレートするのは簡単ですか? ありがとうございます

私たちのアプリは次を使用して画像をアップロードしますhttp. テストしたとき、フォーム form を使用し、form 属性を enctype="multipart/form-data."
$_FILES を使用してバックグラウンドで取得できます


アプリのフロントエンドが画像をアップロードするために使用する形式は何ですか? アドバイスを求めてください

次に、通常は http フォーム アップロードを通じて、つまり 64abd422163ba8bbcfd841b486e6279c もちろん、$_FILES にデータがあれば、アプリによってアップロードされた画像が取得されたことを意味しますそうでない場合は失敗します
アプリのアップロードは変更する必要はありません。
アプリは content-disposition: form-data を使用してアップロードします。 : http://blog.csdn.net/fdipzone/article/details/12180523

PHP 側の取得方法は APP のアップロード方法に依存しますが、ほとんどはフォームアップロードです

file_get_contents; php://input') を使用できます。

他の人は、最初にファイルの内容を読み取り、それを Base64 でエンコードしてからアップロードします。

これは、主に APP によって処理される単純なブレークポイントです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。