php+js实现异步图片上传实例分享
php+js实现异步图片上传实例分享
发布时间:2016-12-29 来源:查字典编辑
摘要:upload.php复制代码代码如下:index.html复制代码代码如下:Html5Ajax上传文件varxhr;functioncrea...

upload.php

复制代码 代码如下:

<?php

if(isset($_FILES["myfile"]))

{

$ret = array();

$uploadDir = 'images'.DIRECTORY_SEPARATOR.date("Ymd").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'];

move_uploaded_file($_FILES["myfile"]["tmp_name"],$dir.$fileName);

$ret['file'] = DIRECTORY_SEPARATOR.$uploadDir.$fileName;

}

echo json_encode($ret);

}

?>

index.html

复制代码 代码如下:

<!DOCTYPE html>

<html>

<head>

<title>Html5 Ajax 上传文件</title>

<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 = 'upload.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('图片链接:n'+json.file);

}

}

}

</script>

<style>

.txt{ height:28px; border:1px solid #cdcdcd; width:670px;}

.mybtn{ background-color:#FFF; line-height:14px;vertical-align:middle;border:1px solid #CDCDCD;height:30px; width:70px;}

.file{ position:absolute; top:0; right:80px; height:24px; filter:alpha(opacity:0);opacity: 0;width:260px }

</style>

</head>

<body>

<div>

<label>图片</label>

<br/>

<input type='text' name='textfield' id='textfield' />

<span>浏览...</span>

<input type="file" name="file" id="file" size="28" onchange="document.getElementById('textfield').value=this.value" />

<span>上传</span>

</div>

</body>

</html>

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新php教程学习
热门php教程学习
编程开发子分类