php接口上传头像 app,php调用美图秀秀插件上传头像
登錄美圖秀秀WEB開放平臺(http://open.web.meitu.com/wiki/),
1.1、設置crossdomain.xml
下載crossdomain.xml文件,把解壓出來的crossdomain.xml文件放在您保存圖片或圖片來源的服務器根目錄下,
比如: http://example.com.cn,那么crossdomain.xml的路徑為:http://example.com.cn/crossdomain.xml。
需要注意的是crossdomain.xml必須部署于站點根目錄下才有效, crossdomain.xml的目的是授權來自美圖域下的flash向您的站點上傳圖片或者從您的站點加載圖片。
1.2、調用方法
在你的網頁代碼head標簽里或者body標簽里加入代碼。
然后加載meitu.js和JQ.Js的代碼,再創建一個div,id設置為csdiv,例:
接下來你需要編輯你的meitu.js文件,設置美圖秀秀API的相關參數啦,例:
(上圖有相關注釋,相信你可以看得懂的!不懂的多看下開發文檔)
接著,我們就上面的上傳接口進行編寫相應的php代碼:
if(!$_FILES['Filedata']) { //判斷上傳文件是佛滿足需求die( 'Image data not detected!');}
if($_FILES['Filedata']['error'] >0) { //文件上傳錯誤提示switch($_FILES['Filedata'] ['error']) {
case1:$error_log='The file is bigger than this PHP installation allows';//1---文件上傳大小超過服務器允許上傳的最大值break;case2:$error_log='The file is bigger than this form allows';//2---文件上傳大小超過html表單中隱藏域MAX_FILE_SIZE選項的值break;case3:$error_log='Only part of the file was uploaded';//3---文件只有部分被上傳break;case4:$error_log='No file was uploaded';//4---沒有文件被上傳break;default :break;}
die( 'upload error:'.$error_log);} else{ //上傳成功$img_data=$_FILES['Filedata']['tmp_name'];//獲得臨時文件名$size=getimagesize($img_data);//獲得上傳文件的大小$file_type=$size['mime'];//獲得上傳文件類型if(!in_array($file_type,array('image/jpg','image/jpeg','image/pjpeg','image/png','image/gif'))) {
$error_log='only allow jpg,png,gif';die( 'upload error:'.$error_log);//文件類型出錯,輸出錯誤信息}
//獲得文件擴展名switch($file_type) {
case'image/jpg':case'image/jpeg':case'image/pjpeg':$extension='jpg';break;case'image/png':$extension='png';break;case'image/gif':$extension='gif';break;}
}
if(!is_file($img_data)) {
die( 'Image upload error!');}
上邊這段代碼重要的作用是:判斷是否上傳文件,上傳文件是否滿足要求(大小,格式),獲得文件的擴展名。
下邊這段代碼可以理解為:新創建一個$filename,帶有文件路徑、文件名和文件擴展名,調用move_uploaded_file函數,將上傳的圖片移到到當前$filename文件,然后加載Db.class.php類和連接數據庫操作的config.php,接著把當前上傳文件更新在數據庫相應的avatar上:
連接數據庫的config.php文件為:
圖|來源截圖
不當你的世界只作你的肩膀
○
Benny
○
技術帖
總結
以上是生活随笔為你收集整理的php接口上传头像 app,php调用美图秀秀插件上传头像的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java,SQL 截取字符串substr
- 下一篇: 代码高亮的可行性方案,highlight