Heim  >  Artikel  >  Backend-Entwicklung  >  So erreichen Sie einen aktualisierungsfreien Upload durch die Kombination einer PHP-Vorlage mit dem JS-Upload-Plug-in

So erreichen Sie einen aktualisierungsfreien Upload durch die Kombination einer PHP-Vorlage mit dem JS-Upload-Plug-in

墨辰丷
墨辰丷Original
2018-06-08 09:38:361578Durchsuche

In diesem Artikel wird hauptsächlich die Methode zum Kombinieren von PHP-Vorlagen und JS-Upload-Plug-Ins vorgestellt, um einen aktualisierungsfreien Upload zu erreichen. Ich hoffe, dass er für alle hilfreich ist.

Vorlagendateicode:

<!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文件
    &#39;swf&#39;: &#39;<{$smarty.const.PUBLIC_PATH}>/Uploadify/uploadify.swf&#39;,
    //后台处理的页面
    &#39;uploader&#39;: "<{U(&#39;home/Login/Uploads&#39;,&#39;&#39;,false)}>",
    //按钮显示的文字
    &#39;buttonText&#39;: &#39;上传图片&#39;,
     //显示的高度和宽度
    "height" : 30,
    &#39;fileTypeDesc&#39;: &#39;Image Files&#39;,
    //允许上传的文件后缀
    &#39;fileTypeExts&#39;: &#39;*.gif; *.jpg; *.png&#39;,
    //发送给后台的其他参数通过formData指定
    //&#39;formData&#39;: { &#39;someKey&#39;: &#39;someValue&#39;, &#39;someOtherKey&#39;: 1 },
    "method" : &#39;post&#39;,//方法,服务端可以用$_POST数组获取数据
    &#39;removeTimeout&#39;  : 1,
    "onUploadSuccess" : uploadPicture
  });
  //可以根据自己的要求来做相应处理
  function uploadPicture(file, data){
    var data = eval(&#39;(&#39; + data + &#39;)&#39;);
   if(data.errorcode){
    alert(data.errormsg); 
   } else {
    alert(data.errormsg);
   }
  } 
 });
</script>
 <body>
  <input type="file" name="file_upload" id="file_upload" />
 </body>
</html>

Controller-Code:

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

Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, das kann so sein hilfreich für alle. Lernen hilft.

Verwandte Empfehlungen:

PHP Sehen Sie sich den Hintergrund, den Prozess und die Lösungen des aktuellen Variablentyps an

php basiert auf Imagick und implementiert die Funktion zum Hinzufügen von Wasserzeichen und Text zu Bildern

PHP implementiert die Funktion des Punktezählers des Richters

Das obige ist der detaillierte Inhalt vonSo erreichen Sie einen aktualisierungsfreien Upload durch die Kombination einer PHP-Vorlage mit dem JS-Upload-Plug-in. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn