本文目录一览:
- 1、想做一个PHP图片上传前预览,麻烦帮忙看下为什么预览不能显示
- 2、PHP怎样上传图片以及预览图片?
- 3、用php上传图片怎么做?
- 4、用PHP如何实现一个图片预览的功能?
- 5、php 如何实现图片上传前预览,并且有多个图片上传和预览
想做一个PHP图片上传前预览,麻烦帮忙看下为什么预览不能显示
ie8以下的版本应该能预览,ie9,火狐,谷歌等浏览器出于安全考虑,已经取消了显示本地文件的权限,只能读取缓存里的文件。
1.你可以用flash上传插件做预览;
2.你可以先把文件传到服务器临时文件里,如百度这是这样子;确定保存后再从临时文件里移动到上传目录;
3.你可以用兼容html5做预览,不兼容html5的浏览器反而支持你上面的这种预览方法,所以就可兼容目录所有浏览器了。。
如果要做经常上传图片的可以用第3种,如果就是偶尔插图上传头像的,就用第二种好了。。。
回答不专业。。爱看不看
PHP怎样上传图片以及预览图片?
本地图片,就搞个img,设置他的src就可以实现;
参考如下:
div class="column " style="width: 400px; margin-left: 200px;" id="imageShow"
div id="productImageNew"@*用于图片预览*@
/div
div id="productImage"
div class="widget the-common-margin-top" style="height: 400px; border: 1px solid #eeeeee;
padding: 3px;"
img id="imgHolder" style="max-height: 390px; max-width: 390px;" /
/div
/div
/div
form id="formImageUpload" name="formImageUpload" method="post" action="/DocTeam/ProductsImage/UploadImage"
enctype="multipart/form-data"
div id="fileDiv"
input type="file" id="theFile" name="theFile" size="20" style="cursor: pointer;
width: 65px; height: 60px; position: absolute; filter: alpha(opacity:1); -moz-opacity: 0;
opacity: 0; z-index: 102;" /
/div
input type="hidden" name="imageId_hide" id="imageId_hide" /
/form
div id="cover" style="position: absolute; background-color: White; z-index: 10;
filter: alpha(opacity=100); -moz-opacity: 1; opacity: 1; overflow: auto; width: 400px;"
input id="selectImage" type="button" style="width: 65px; height: 60px;" value="Select" /
br /
br /
input type="button" value="Upload" id="imageUpload" style="width: 65px; height: 60px;"
disabled="disabled" onclick="javascript:uploadImage();" /
/div
//js本地图片预览,兼容ie[6-9]、火狐、Chrome17+、Opera11+、Maxthon3
function PreviewImage(fileObj, imgPreviewId, divPreviewId) {
var allowExtention = ".jpg,.bmp,.gif,.png"; //允许上传文件的后缀名document.getElementById("hfAllowPicSuffix").value;
var extention = fileObj.value.substring(fileObj.value.lastIndexOf(".") + 1).toLowerCase();
var browserVersion = window.navigator.userAgent.toUpperCase();
if (allowExtention.indexOf(extention) -1) {
if (fileObj.files) {//HTML5实现预览,兼容chrome、火狐7+等
if (window.FileReader) {
var reader = new FileReader();
reader.onload = function (e) {
document.getElementById(imgPreviewId).setAttribute("src", e.target.result);
}
reader.readAsDataURL(fileObj.files[0]);
} else if (browserVersion.indexOf("SAFARI") -1) {
alert("不支持Safari6.0以下浏览器的图片预览!");
}
} else if (browserVersion.indexOf("MSIE") -1) {
if (browserVersion.indexOf("MSIE 6") -1) {//ie6
document.getElementById(imgPreviewId).setAttribute("src", fileObj.value);
} else {//ie[7-9]
fileObj.select();
if (browserVersion.indexOf("MSIE 9") -1)
fileObj.blur(); //不加上document.selection.createRange().text在ie9会拒绝访问
var newPreview = document.getElementById(divPreviewId + "New");
if (newPreview == null) {
newPreview = document.createElement("div");
newPreview.setAttribute("id", divPreviewId + "New");
}
var a = document.selection.createRange().text;
// newPreview.style.width = document.getElementById(imgPreviewId).width + "px";
// newPreview.style.height = document.getElementById(imgPreviewId).height + "px";
//newPreview.style.width = 390 + "px";
newPreview.style.height = 390 + "px";
newPreview.style.border = "solid 1px #eeeeee";
newPreview.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='scale',src='" + document.selection.createRange().text + "')";
var tempDivPreview = document.getElementById(divPreviewId);
// tempDivPreview.parentNode.insertBefore(newPreview, tempDivPreview);
newPreview.style.display = "block";
tempDivPreview.style.display = "none";
}
} else if (browserVersion.indexOf("FIREFOX") -1) {//firefox
var firefoxVersion = parseFloat(browserVersion.toLowerCase().match(/firefox\/([\d.]+)/)[1]);
if (firefoxVersion 7) {//firefox7以下版本
document.getElementById(imgPreviewId).setAttribute("src", fileObj.files[0].getAsDataURL());
} else {//firefox7.0+
document.getElementById(imgPreviewId).setAttribute("src", window.URL.createObjectURL(fileObj.files[0]));
}
} else {
document.getElementById(imgPreviewId).setAttribute("src", fileObj.value);
}
} else {
alert("仅支持" + allowExtention + "为后缀名的文件!");
fileObj.value = ""; //清空选中文件
if (browserVersion.indexOf("MSIE") -1) {
fileObj.select();
document.selection.clear();
}
fileObj.outerHTML = fileObj.outerHTML;
}
}
function setTheFileButton_Cover_SelectImageButton() {
// debugger;
// var position = $("#selectImage", "#cover").position();
// var css = { top: position.top, left: position.left };
// $("#theFile", "#fileDiv").css(css);
}
var $imgHolder = $('#imgHolder', "#productImage");
var tempDiv = $("#temp_div");
$("#select", "#cover").click(function () {
$("#theFile", "#fileDiv").click().select();
});
$("#theFile", "#fileDiv").click(function () {
$(this).blur();
});
$("#theFile", "#fileDiv").change(function () {
PreviewImage(this, 'imgHolder', 'productImage');
setTheFileButton_Cover_SelectImageButton();
// alert("预览已生成!");
$("#imageUpload").prop("disabled", false);
});
用php上传图片怎么做?
上传图片原理:首先判断文件类型是否为图片格式,若是则上传文件,然后重命名文件(一般都是避免上传文件重名,现在基本上都是以为时间来命名),接着把文件上传到指定目录,成功上传后输出上传图片的预览。
1.首先我们开始判断文件类型是否为图片类型用到的函数
{
strrchr:查找字符串在另一个字符串中最后一次出现的位置,并返回从该位置到字符串结尾的所有字符。
substr: 取部份字符串。
$HTTP_POST_FILES['file']['name']:获取当前上传的文件全称。
}
图片类型就是“.”后面的字符(比如:一个文件名称为XXX.JPG 那么它的类型就是“.”后面的JPG)。 我们可以用PHP中的函数来截取上传者文件名字的。我们来写个获取文件类型的函数
?
function type()
{
return substr(strrchr($HTTP_POST_FILES['file']['name'],'.'),1);
}
?
2.若是则上传文件,然后重命名文件用到的函数
{ strtolower:把字符串的字母全部转换为小写字母. in_array: 函数在数组中搜索给定的值。 implode:函数把数组元素组合为一个字符串 random:随机生成的数 $_FILES['userfile']['name']:上传文件名称 $uploaddir:自己定义的变量。比如在同一个文件夹里面,你想把上传的文件放到这个文件夹的FILE文件夹下,你可以这样定义$uploaddir="./file/";注意写法 } 这边会出现很多问题,第一先写一个能上传类型的数组。第二判断文件合法性。第三给文件重名。*(这边判断文件大小就不写了)先定义允许上传文件的类型数组:$type=array("jpg","gif","bmp","jpeg","png");第二用一个IF。。else。。写一个判断文件合法性的控制流语句。if(!in_arry(strtolower(type()),$type))//如果不存在能上传的类型 { $text=implode('.',$type); echo "您只能上传以下类型文件: ",$text,"br"; } 下面就是给他们重新命名了,else { $filename=explode(".",$_FILES['userfile']['name']);//把上传的文件名以“.”好为准做一个数组。 $time=date("m-d-H-i-s");//去当前上传的时间 $filename[0]=$time;//取文件名t替换 name=implode(".",$filename); //上传后的文件名 $uploadfile=$uploaddir.$name;//上传后的文件名地址 } 3.最后把文件上传到指定目录,成功上传后输出上传图片的预览用到的函数{ move_uploaded_file:执行上传文件 } if(move_uploaded_file($_FILES['userfile']['tmp_name'],$uploadfile)) { echo "center您的文件已经上传完毕 上传图片预览: /centerbrcenterimg src='$uploadfile'/center"; echo"brcentera href='javascrīpt:history.go(-1)'继续上传/a/center"; } else { echo"传输失败!"; }
用PHP如何实现一个图片预览的功能?
lt;HTMLgt;lt;HEADgt;lt;TITLEgt;用商家做上传图片预览功能lt;/TITLEgt;lt;scriptgt;functionnbsp;Wa_SetImgAutoSize(img){//varnbsp;img=document.all.img1;//获取图片varnbsp;MaxWidth=200;//设置图片宽度界限varnbsp;MaxHeight=100;//设置图片高度界限varnbsp;HeightWidth=img.offsetHeight/img.offsetWidth;//设置高宽比varnbsp;WidthHeight=img.offsetWidth/img.offsetHeight;//设置宽高比alert(“test“+img.offsetHeight+img.fileSize);if(img.offsetHeightgt;1)nbsp;alert(img.offsetHeight);if(img.readyState!=“complete“){nbsp;nbsp;nbsp;returnnbsp;false;//确保图片完全加载}nbsp;nbsp;if(img.offsetWidthgt;MaxWidth){img.width=MaxWidth;img.height=MaxWidth*HeightWidth;}if(img.offsetHeightgt;MaxHeight){img.height=MaxHeight;img.width=MaxHeight*WidthHeight;}}nbsp;nbsp;functionnbsp;CheckImg(img){nbsp;nbsp;nbsp;varnbsp;message=““;nbsp;nbsp;nbsp;varnbsp;MaxWidth=1;//设置图片宽度界限nbsp;nbsp;nbsp;varnbsp;MaxHeight=1;//设置图片高度界限nbsp;nbsp;nbsp;nbsp;nbsp;if(img.readyState!=“complete“){nbsp;nbsp;nbsp;returnnbsp;false;//确保图片完全加载nbsp;nbsp;nbsp;}nbsp;nbsp;nbsp;if(img.offsetHeightgt;MaxHeight)nbsp;message+=“
高度超额:“+img.offsetHeight;nbsp;nbsp;nbsp;if(img.offsetWidthgt;MaxWidth)nbsp;message+=“
宽度超额:“+img.offsetWidth;nbsp;nbsp;nbsp;if(message!=““)nbsp;alert(message);}lt;/scriptgt;lt;/HEADgt;lt;BODYgt;lt;imgnbsp;src=““nbsp;name=“img1“nbsp;width=“80“nbsp;border=0nbsp;id=“img1“nbsp;gt;lt;brgt;lt;inputnbsp;id=inpnbsp;type=“file“nbsp;onpropertychange=“img1.src=this.value;“gt;lt;/BODYgt;lt;/HTMLgt;另外附上PHP的一个取得图片文件信息的函数getimagesize()的一个使用实例:lt;?//nbsp;$arr=getimagesize(“images/album_01.gif“);//nbsp;echonbsp;“arr=“.$arr[3];//nbsp;$strarr=explode(“““,$arr[3]);//nbsp;echonbsp;“strarr=“.$strarr[1];?gt;
php 如何实现图片上传前预览,并且有多个图片上传和预览
form name="form4" id="form4" method="post" action="#" input type="file" name="file4" id="file4" ōnchange="preview4()" / img id="pic4" src="" alt="图片在此显示" width="120"/ /form scrīpt type="text/javascrīpt" function preview4(){ var x = document.getElementById("file4"); var y = document.getElementById("pic4"); if(!x || !x.value || !y) return; var patn = /\.jpg$|\.jpeg$|\.gif$/i; if(patn.test(x.value)){ y.src = "" + x.value; } else{ alert("您选择的似乎不是图像文件。"); } } /scrīpt