php無重新整理檔案上傳程式碼

來源:互聯網
上載者:User

在一個網站項目中,為了得到更好的使用者體驗,很多地方都要處理成非同步無重新整理的效果。此檔案上傳範例是利用一個隱藏的架構iframe做橋樑,實現主體頁面上傳檔案無重新整理的效果。

其實本範例也不是真正的非同步效果,但是也是可以達到無重新整理效果的。而且這種方法是實現php無重新整理上傳檔案最快捷,最簡單的方法,所以何樂而不為呢。

html代碼

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>php實現無重新整理檔案上傳源碼-代瀟瑞部落格</title>
<script type="text/javascript" src="jquery-1.8.0.min.js"></script>
<script type="text/javascript">
 function ajax_upload(fname){
  if(fname){
   $(".label1").html("上傳成功:("+fname+")");
   var obj = document.getElementById('upfile');
   obj.outerHTML=obj.outerHTML;
  }else{
   $(".label1").html("上傳失敗!!");
  }
  $("#upButton").val("上 傳").removeAttr("disabled");
 }
 
 function check_file(){
  if($("#upfile").val()==""){
   $(".label1").html("請先選擇一個檔案!");
   return false;
  }else{
   $("#upButton").val("上傳中...").attr("disabled","disabled");
   return true;
  }
 }
</script>
</head>

<body>

<p><input type="text" /></p>

<form action="deal_upload.php" method="post" target="upimgf" enctype="multipart/form-data" onsubmit="return check_file()">
<p>請選擇圖片:<input type="file" name="img" id="upfile" /></p>
<p><label class="label1" style="color:red;"></label></p>
<p><input type="submit" value="上 傳" id="upButton" /></p>
</form>
<iframe name="upimgf" style="display:none;"></iframe>
</body>
</html>


php代碼

<?php
 
 header("Content-type:text/html;charset=utf-8");
 
 $up_file = $_FILES['img'];
 $file_name = $up_file['name'];
 //print_r($file_name);
 if(move_uploaded_file($up_file['tmp_name'],iconv("utf-8","gb2312",$file_name))){
  echo "<script> parent.ajax_upload('".$file_name."'); </script>";
 }else{
  echo "<script> parent.ajax_upload(''); </script>";
 }
?>

當然上在這段上傳沒有做任何的一個安全驗證了,我們如果要處理 可以進行一些處理 了。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.