phpcms v9 【二次開發】 後臺調用單張圖片上傳功能(詳解)

<script type="text/javascript" src="<?php echo JS_PATH?>content_addtop.js"></script>
        <script type="text/javascript" src="<?php echo JS_PATH?>swfupload/swf2ckeditor.js"></script>專題頭圖: 
    <?php $authkey = upload_key('1,jpg|pdf|gif|png|bmp,1,,,0');  ?>
        <input type="text" value="<?php echo $data['images']?>" id="thumb" name="info[images]">
        <a οnclick="flashupload('thumb_images', '附件上傳','thumb',thumb_images,'1,jpg|pdf|gif|png|bmp,1,,,0','content','','<?php echo $authkey;?>');return false;" href="javascript:void(0);">
    <img width="135" height="113" style="cursor:hand" id="thumb_preview" src="<?php echo $data['images']?>"></a>
    <input type="button" value="取消圖片" οnclick="$('#thumb_preview').attr('src','<?php echo IMG_PATH;?>icon/upload-pic.png');$('#thumb').val(' ');return false;" class="button" style="width: 66px;"> 


phpcms各功能都已經寫成了模塊或是函數,在二次開發時直接調用相應的模塊或函數就能實現自己的功能。所以phpcmsv9也是一個不錯的框架,用來開發自己的程序。

phpcmsv9有一個非常好用的圖片上傳功能,傳後直接返回圖片的URL並賦值給隱藏的一個表單,用於簡化圖片上傳保存功能。常用的函數是swfupload函數。這個函數調用了FLASH上傳插件,能實時顯示上傳圖片的縮略圖還能記錄上傳後未使用的圖片列表,方便再次調用。

那後臺開發時怎麼調用圖片上傳函數實現上傳功能呢?很簡單,只需要在相應的位置引用代碼就可以了:

swfupload函數分析:首先引用兩個必需的js,下面$authkey = upload_key('1,jpg|jpeg|gif|png|bmp,1,,,0');這個變量是加密上傳控件的參數,用於上傳時安全驗證,上面定義一下,下面直接引用就可以了。

name="info[images]"是上傳圖片表單名,請根據自己的需求修改表單名,如果表單名不對後臺可能得不到上傳圖片後的地址。1,jpg|jpeg|gif|png|bmp,1,,,0這個字符串是上傳控件的參數,如上傳圖片後輟列表,上傳圖片個數等,請自行嘗試或分析源碼得出具體意義。


注意格式,寫參數的時候是否有單引號。缺少引號 會出現點擊按鈕沒反應。上面的方法 只能傳圖片,不能傳附件。即使修改圖片的後綴成rar,pdf文件,好像只要不是圖片類型,都不行。估計還要修改程序其他方面。




一會補pdf 代碼



pdf弄不成

笨方法:

還用上面的傳圖片的方法,傳附件,pdf,rar

代碼中先修改附件格式,文件可以上傳上,傳後會提示:選擇的類型必須爲圖片類型,無法確認添加,就無法獲取上傳到服務器附件的url

是js在控制,找到statics/js/content_addtop.js 的這句話,屏蔽判斷語句即可。

//  if(!IsImg(in_content)) {
// alert('選擇的類型必須爲圖片類型');
// return false;
// }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章