關於phpcms 中頭像上傳 那位高手說下如何?的
圖片在flash中提交過來的zip壓縮包中,誰能告訴我,php是怎麼擷取到這個zip資源的?
------解決方案--------------------
phpsso_server\phpcms\modules\phpsso\classes\phpsso.class.php
第46行
$this->data['avatardata'] = $GLOBALS['HTTP_RAW_POST_DATA'];
post過來的資料。
file_pust_contents 根據資料,組建檔案(包括檔案地址)
你的代碼沒有貼完全
下面就是解壓縮了
//解壓縮檔案
pc_base::load_app_class('pclzip', 'phpsso', 0);
$archive = new PclZip($filename);
if ($archive->extract(PCLZIP_OPT_PATH, $dir) == 0) {
die("Error : ".$archive->errorInfo(true));
}
//判斷檔案安全,刪除壓縮包和非jpg圖片
$avatararr = array('180x180.jpg', '30x30.jpg', '45x45.jpg', '90x90.jpg');
if($handle = opendir($dir)) {
while(false !== ($file = readdir($handle))) {
if($file !== '.' && $file !== '..') {
if(!in_array($file, $avatararr)) {
@unlink($dir.$file);
} else {
$info = @getimagesize($dir.$file);
if(!$info
------解決方案--------------------
$info[2] !=2) {
@unlink($dir.$file);
}
}
}
}
closedir($handle);
}
$this->db->update(array('avatar'=>1), array('uid'=>$this->uid));
exit('1');