Heim >Backend-Entwicklung >PHP-Tutorial >PHP AjaxForm übermittelt den Bild-Upload und zeigt das Beispiel für den Bildquellcode_php an
Das Beispiel in diesem Artikel teilt Ihnen den spezifischen Code von PHP AjaxForm mit, um das Bild hochzuladen und als Referenz anzuzeigen. Der spezifische Inhalt ist wie folgt.
PHP dofile.php-Datei-Upload-Quellcode
<?php $file_upload = "upload/"; $file_allow_ext='gif|jpg|jpeg|png|gif|zip|rar|ppt|xls|pdf|pptx|xlsx|docx'; $file_allow_size = 5*1024*1024; if($_POST['submit']=="上传"){ if(is_uploaded_file($_FILES['file']['tmp_name'])){ $file_name = $_FILES['file']['name']; $file_error = $_FILES['file']['error']; $file_type = $_FILES['file']['type']; $file_tmp_name = $_FILES['file']['tmp_name']; $file_size = $_FILES['file']['size']; $file_ext = substr($file_name, strrpos($file_name, '.')+1); switch($file_error){ case 0: $data['status'] = 0; $data['msg'] = "文件上传成功!"; break; case 1: $data['status'] = 1; $data['msg'] = "文件上传失败,文件大小".$file_size."超过限制,允许上传大小".sizeFormat($file_allow_size)."!"; break; case 3: $data['status'] = 1; $data['msg'] = "上传失败,文件只有部份上传!"; break; case 4: $data['status'] = 1; $data['msg'] = "上传失败,文件没有被上传!"; break; case 5: $data['status'] = 1; $data['msg'] = "文件上传失败,文件大小为0!"; break; } if(stripos($file_allow_ext,$file_ext)===false){ $data['status'] = 1; $data['msg'] = "该文件扩展名不允许上传"; } if($file_size>$file_allow_size){ $data['status'] = 1; $data['msg'] = "文件大小超过限制,只能上传".sizeFormat($file_allow_size)."的文件!"; } if($data['status']==1){ $data['status'] = 1; $data['msg'] = $data['msg']; exit(json_encode($data)); } if($data['status']==0){ if(file_exists($file_upload)){ $file_new_name = date("YmdHis").'_'.rand(10000,99999).'.'.$file_ext; $file_save_path = $file_upload.$file_new_name; $data['status'] = 0; $data['url'] = $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=''; 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"; } } ?>
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='"+o.url+"' alt='' width='100' /><input type='hidden' name='image[]' value='"+o.url+"' />"); } }, error:function(o){ alert(o.message); } } $("#upfileimage").ajaxForm(options).submit(function(){return false;}); }) </script>
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass er für das Studium aller hilfreich sein wird. Ich hoffe auch, dass jeder Script House unterstützt.