使用js实现ajax,PHP上传图片成功以后返回图片的路径(弹窗出来)。
效果如下:
1、上传界面:
2、上传成功以后
3、后台接收到的文件
代码很简单:
1、html与js部分:
Html5 Ajax 上传文件 <meta charset="utf-8"> <script type="text/javascript"> var xhr; function createXMLHttpRequest() { if (window.ActiveXObject) { xhr = new ActiveXObject("Microsoft.XMLHTTP"); } else if (window.XMLHttpRequest) { xhr = new XMLHttpRequest(); } } function UpladFile() { var fileObj = document.getElementById("file").files[0]; var FileController = 'doajaxfileupload.php'; var form = new FormData(); form.append("myfile", fileObj); createXMLHttpRequest(); xhr.onreadystatechange = handleStateChange; xhr.open("post", FileController, true); xhr.send(form); } function handleStateChange() { if (xhr.readyState == 4) { if (xhr.status == 200 || xhr.status == 0) { var result = xhr.responseText; var json = eval("(" + result + ")"); alert(')本文来(源gaodai#ma#com搞@@代~&码*网2搞代gaodaima码图片链接:\n' + json.file); } } } </script> <body>
浏览... 上传2、php部分:
<?phpif(isset($_FILES["myfile"])){$ret = array();//$uploadDir = 'images'.DIRECTORY_SEPARATOR.date("Ymd").DIRECTORY_SEPARATOR;$uploadDir = 'uploads'.DIRECTORY_SEPARATOR;$dir = dirname(__FILE__).DIRECTORY_SEPARATOR.$uploadDir;file_exists($dir) || (mkdir($dir,0777,true) && chmod($dir,0777));if(!is_array($_FILES["myfile"]["name"])) //single file{//$fileName = time().uniqid().'.'.pathinfo($_FILES["myfile"]["name"])['extension'];$fileName = $_FILES["myfile"]["name"];move_uploaded_file($_FILES["myfile"]["tmp_name"],$dir.$fileName);$ret['file'] = DIRECTORY_SEPARATOR.$uploadDir.$fileName;}echo json_encode($ret);}?>以上就介绍了PHP+ajax图片上传的简单实现,包括了图片上传,ajax方面的内容,希望对PHP教程有兴趣的朋友有所帮助。