PHP AjaxForm übermittelt Bilder zum Hochladen und Anzeigen von Bildern

墨辰丷
Freigeben: 2023-03-28 13:02:01
Original
1447 Leute haben es durchsucht

In diesem Artikel wird hauptsächlich PHP AjaxForm zum Hochladen von Bildern und zum Anzeigen des Bildquellcodes vorgestellt. Interessierte Freunde können sich auf den Quellcode für das Hochladen von PHP dofile.php beziehen


<?php
$file_upload = "upload/";
$file_allow_ext=&#39;gif|jpg|jpeg|png|gif|zip|rar|ppt|xls|pdf|pptx|xlsx|docx&#39;;
$file_allow_size = 5*1024*1024;
if($_POST[&#39;submit&#39;]=="上传"){
 if(is_uploaded_file($_FILES[&#39;file&#39;][&#39;tmp_name&#39;])){
  $file_name = $_FILES[&#39;file&#39;][&#39;name&#39;];
  $file_error = $_FILES[&#39;file&#39;][&#39;error&#39;];
  $file_type = $_FILES[&#39;file&#39;][&#39;type&#39;];
  $file_tmp_name = $_FILES[&#39;file&#39;][&#39;tmp_name&#39;]; 
  $file_size = $_FILES[&#39;file&#39;][&#39;size&#39;];
  $file_ext = substr($file_name, strrpos($file_name, &#39;.&#39;)+1);
  switch($file_error){
  case 0:
  $data[&#39;status&#39;] = 0;
  $data[&#39;msg&#39;] = "文件上传成功!";  
  break;

  case 1:
  $data[&#39;status&#39;] = 1;
  $data[&#39;msg&#39;] = "文件上传失败,文件大小".$file_size."超过限制,允许上传大小".sizeFormat($file_allow_size)."!";  
  break;

  case 3:
  $data[&#39;status&#39;] = 1;
  $data[&#39;msg&#39;] = "上传失败,文件只有部份上传!";  
  break;

  case 4:
  $data[&#39;status&#39;] = 1;
  $data[&#39;msg&#39;] = "上传失败,文件没有被上传!";  
  break;

  case 5:
  $data[&#39;status&#39;] = 1;
  $data[&#39;msg&#39;] = "文件上传失败,文件大小为0!";  
  break; 
  }
  if(stripos($file_allow_ext,$file_ext)===false){
  $data[&#39;status&#39;] = 1;
  $data[&#39;msg&#39;] = "该文件扩展名不允许上传";  
  }
  if($file_size>$file_allow_size){  
  $data[&#39;status&#39;] = 1;
  $data[&#39;msg&#39;] = "文件大小超过限制,只能上传".sizeFormat($file_allow_size)."的文件!"; 
  } 
  if($data[&#39;status&#39;]==1){
  $data[&#39;status&#39;] = 1;
  $data[&#39;msg&#39;] = $data[&#39;msg&#39;];
  exit(json_encode($data)); 
  }
  if($data[&#39;status&#39;]==0){
  if(file_exists($file_upload)){   
   $file_new_name = date("YmdHis").&#39;_&#39;.rand(10000,99999).&#39;.&#39;.$file_ext;
   $file_save_path = $file_upload.$file_new_name; 
   $data[&#39;status&#39;] = 0;  
   $data[&#39;url&#39;] = $file_save_path;
   move_uploaded_file($file_tmp_name,$file_save_path);
   exit(json_encode($data));    
  }else{
   exit(json_encode($data));
  }  

  }   
 }
}

function sizeFormat($size)
{
 $sizeStr=&#39;&#39;;
 if($size<1024)
 {
  return $size."bytes";
 }
 else if($size<(1024*1024))
 {
  $size=round($size/1024,1);
  return $size."KB";
 }
 else if($size<(1024*1024*1024))
 {
  $size=round($size/(1024*1024),1);
  return $size."MB";
 }
 else
 {
  $size=round($size/(1024*1024*1024),1);
  return $size."GB";
 } 
}



?>
Nach dem Login kopieren

Der HTML-Code lautet wie folgt

<script type="text/javascript" src="http://lib.sinaapp.com/js/jquery/1.9.1/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="http://files.cnblogs.com/files/china-li/jquery.form.js"></script>

<form action="dofile.php" method="post" enctype="multipart/form-data" id="upfileimage">
<input type="hidden" name="image[]" />
<label for="file">文件:</label><input type="file" name="file" id="file" />
<input type="submit" name="submit" value="上传" />
</form>

<script type="text/javascript">
$("#upfileimage").submit(function(){
 if($("input[type=file]").val()==""){
  alert("请选择要上传的文件");
  return false;
 }
})
$(function(){
 var options = {  
  type:"POST",
  dataType:"json",
  resetForm:true,
  success:function(o){
   if(o.status==1){
   alert(o.msg);
   }else{
   $("body").append("  <img src=&#39;"+o.url+"&#39; alt=&#39;&#39; width=&#39;100&#39; /><input type=&#39;hidden&#39; name=&#39;image[]&#39; value=&#39;"+o.url+"&#39; />");
   }
  },
  error:function(o){
   alert(o.message);
  }  
 }
 $("#upfileimage").ajaxForm(options).submit(function(){return false;});

})
</script>
Nach dem Login kopieren

Das Obige ist der gesamte Inhalt davon Artikel, ich hoffe, dass er für das Studium aller hilfreich sein wird.


Verwandte Empfehlungen:

So implementieren Sie einen Hypothekenrechner in PHP


phpDie Datei enthält die Verwendung und Leistung der Verzeichniskonfiguration open_basedir

php Implementiert die Methode zum Aufrufen von ffmpeg, um Videoinformationen zu erhalten

Das obige ist der detaillierte Inhalt vonPHP AjaxForm übermittelt Bilder zum Hochladen und Anzeigen von Bildern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!