將index.html和upload.php檔案儲存到支援php的空間的同級目錄,測試回合即可
AJAX 用戶端頁面代碼: index.html
<html> <body> <h1>Ajax file upload sample</h1><br/><input id="uplaod" name="btn_send" type="button" value="上傳測試"/> <div id=result></div> <PRE class=js name="code"><SCRIPT LANGUAGE=JavaScript> // 上傳函數 function btn_send.onclick() { data = "" spliter = "-------7d8d733180846" datadata = data + spliter + "rn" datadata = data + "Content-Disposition: form-data; name="photofile"; filename="C:a.txt"rn" // datadata = data + "Content-Type: image/pjpeg" + vbCrLf datadata = data + "Content-Type: text/plain" + "rn" + "rn" text = "My name is Wilson Lin." postLength = text.length + data.length + 2 + spliter.length + 4 package = data + text + "rn" + spliter + "--rn" alert(package) // 把XML文檔發送到Web伺服器 var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); xmlhttp.open("POST","./upload.php",false); xmlhttp.setRequestHeader("Content-Type", "multipart/form-data; boundary=-----7d8d733180846"); xmlhttp.setRequestHeader("Content-Length", postLength); xmlhttp.send(package); // 顯示伺服器返回的資訊 result.innerHTML=xmlhttp.ResponseText; } </SCRIPT> </PRE> </body> </html> |
PHP伺服器端代碼: upload.php
<?php // $_FILES['photofile']:是獲得上傳圖片的數組 // $uploadfile:存放地址 $uploadfile = "D:/".$_FILES['photofile']['name']; copy( $_FILES['photofile']['tmp_name'], $uploadfile ); echo "URL: <a href='http://localhost/".$_FILES['photofile']['name']."' target='_blank'>".$_FILES['photofile']['name']."</a><br/>"; ?> Upload successed! |