Thinkphp+smarty+uploadify实现无刷新上传

5年以前  |  阅读数:1077 次  |  编程语言:PHP 

本文实例讲述了Thinkphp+smarty+uploadify实现无刷新上传的方法。分享给大家供大家参考。具体如下:

模板文件代码:


    <!DOCTYPE html>
    <html lang="cn">
     <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      <link href="<{$smarty.const.PUBLIC_PATH}>/Uploadify/uploadify.css" rel="stylesheet" type="text/css" />
      <script src="<{$smarty.const.PUBLIC_PATH}>/Uploadify/jquery.js" type="text/javascript"></script>
      <script src="<{$smarty.const.PUBLIC_PATH}>/Uploadify/jquery.uploadify.min.js" type="text/javascript"></script>
     </head>
     <script type="text/javascript">
      $(function() {
       $("#file_upload").uploadify({
        //指定swf文件
        'swf': '<{$smarty.const.PUBLIC_PATH}>/Uploadify/uploadify.swf',
        //后台处理的页面
        'uploader': "<{U('home/Login/Uploads','',false)}>",
        //按钮显示的文字
        'buttonText': '上传图片',
         //显示的高度和宽度
        "height" : 30,
        'fileTypeDesc': 'Image Files',
        //允许上传的文件后缀
        'fileTypeExts': '*.gif; *.jpg; *.png',
        //发送给后台的其他参数通过formData指定
        //'formData': { 'someKey': 'someValue', 'someOtherKey': 1 },
        "method" : 'post',//方法,服务端可以用$_POST数组获取数据
        'removeTimeout'  : 1,
        "onUploadSuccess" : uploadPicture
      });
      //可以根据自己的要求来做相应处理
      function uploadPicture(file, data){
        var data = eval('(' + data + ')');
       if(data.errorcode){
        alert(data.errormsg); 
       } else {
        alert(data.errormsg);
       }
      } 
     });
    </script>
     <body>
      <input type="file" name="file_upload" id="file_upload" />
     </body>
    </html>

控制器代码:


    public function uploads(){
      $arr = array( "errorcode"=>"1","errormsg"=>"上传成功!");
      $model = M('applicant');
      if (!empty($_FILES)) {
        //图片上传设置
        $config = array( 
        'maxSize' => 1000000, 
        'rootPath' => 'Public',
        'savePath' => '/Uploads/', 
        'saveName' => array('uniqid',''), 
        'exts'  => array('jpg', 'gif', 'png', 'jpeg'), 
        'autoSub' => false, 
        'subName' => array('date','Ymd'),
       );
       $upload = new \Think\Upload($config);// 实例化上传类
      $info = $upload->upload();
       if($info){
        $arr['errorcode'] = "0";
       } else {
        $arr["errorcode"] = "1";
        $arr["errormsg"] = $upload->getError();
       }
       /* 返回JSON数据 */
       $this->ajaxReturn($arr);
      }
    }

希望本文所述对大家的php程序设计有所帮助。

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例