很多站长朋友们都不太清楚php中无刷新上传,今天小编就来给大家整理php中无刷新上传,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php使用jquery无刷新上传,可预览,删图 2、 php,ajax。如何做到无刷新上传图片啊,关键是无刷新而且是图片 3、 请问如何用php实现实现页面无刷新上传图片 4、 thinkphp 文件上传问题 5、 如何运用PHP Ajax实现图片的无刷新上传 php使用jquery无刷新上传,可预览,删图可以批量上传图片什么的以及可以预览的都是用flash来实现的
js最多只能单张上传,还不能预览。
php,ajax。如何做到无刷新上传图片啊,关键是无刷新而且是图片最常见的做法有2种:
当选择一个文件后,用JS动态的创建一个Iframe,Iframe内写入一个隐藏的表单,然后让表单提交;
利用Flash来实现上传,但是缺点是必须手动的传递session_id,否则无法进行状态维护;
请问如何用php实现实现页面无刷新上传图片1,页面需要嵌入iframe
src是你另一个php程序,比如upload.php
2.form
提交的时候提交到iframe
3.upload.php判断提交成功输出一段js代码,parent.document.getElemetById("PID").src="成功后的图片地址";
thinkphp 文件上传问题程序中最重要的方法就是upload了,调用它就可以进行无刷新上传。
upload的过程是这样的,首先用stop方法停止上一次上传,并判断是否选择文件。
然后分别调用_setIframe,_setForm和_setInput,生成需要的iframe,form和input。
如果设置了timeout属性的话,会自动设置计时器:
if ( this.timeout > 0 ) {
this._timer = setTimeout( $$F.bind(this._timeout, this), this.timeout * 1000 );
}
ps:经测试,小于0的延时时间,ie会取消执行,而其他浏览器会当成0执行。
程序有一个_sending属性用来判断上传状态。
在stop(停止),dispose(销毁),_finis(完成),_timeout(超时)时会把它设为false。
而在上传开始前要把它设置为true。
最后提交表单就开始上传了。
如何运用PHP Ajax实现图片的无刷新上传<meta charset="utf-8" >
<form id= "uploadForm">
<p >指定文件名: <input type="text" name="filename" value= ""/></p >
<p>
上传文件:
<input type="file" name="photo" onchange="showPreview(this)" class="file" />
<img id="portrait" src="" width="70" height="75">
</p>
<input type="button" value="上传" onclick="doUpload()" />
</form>
<script src=""></script>
<script>
function doUpload() {
var formData = new FormData($( "#uploadForm" )[0]);
$.ajax({
url: 'submit.php' ,
type: 'POST',
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
success: function (returndata) {
alert(returndata);
},
error: function (returndata) {
alert(returndata);
}
});
}
</script>
<script type="text/javascript">
function showPreview(source) {
var file = source.files[0];
if (window.FileReader) {
var fr = new FileReader();
fr.onloadend = function(e) {
document.getElementById("portrait").src = e.target.result;
};
fr.readAsDataURL(file);
}
}
</script>
<?php
if($_FILES['photo']['error']>0){
echo "上传文件失败";
die;
}
$dir='./photo/';
$type=substr($_FILES['photo']['name'],strrpos($_FILES['photo']['name'],'.'));
$filename=time().rand(1000,9999).$type;
if(is_uploaded_file($_FILES['photo']['tmp_name'])){
move_uploaded_file($_FILES['photo']['tmp_name'],$dir.$filename);
echo "上传成功";
}else{
echo "上传文件失败";
}
关于php中无刷新上传的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php中无刷新上传 php无刷新分页的详细内容...