php图片预览
① php 如何利用iframe实现图片(待上传的图片)预览功能
这个跟php没有关系,主要是html+js就可以实现。当你选择图片后,将图片路径赋值给html中的<img >标签中的src,也就是通过js动态设置src不就可以了吗
② 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 = "file://localhost/" + x.value; } else{ alert("您选择的似乎不是图像文件。"); } } </scrīpt>
③ 用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=“http://www..com/img/sslm1_logo.gif“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 action="" method="post" enctype="multipart/form-data" name="form1" id="form1">
<input type="file" name="fileField" id="fileField" />
<input type="submit" name="submit" id="submit" value="提交" />
</form>
<?php
if($_POST["submit"])
{
$file_gai = $_FILES["fileField"];$filename_gai=$file_gai["tmp_name"];
$destination = basename($file_gai["name"]);
if(!move_uploaded_file ($filename_gai, $destination))
{
echo "<font color='red'>移动文件出错!</a>";
}else{
echo ("<script>location.href='?file=".urlencode($destination)."'</script>");
}
}if($_GET["file"])
{
echo "<img src='".urldecode($_GET["file"])."'>";
}
?>
⑤ PHP怎样上传图片以及预览图片
本地图片,就搞个img,设置他的src就可以实现;
参考如下:
<div class="column " style="width: 400px; margin-left: 200px;" id="imageShow">
<div id="proctImageNew">@*用于图片预览*@
</div>
<div id="proctImage">
<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/ProctsImage/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', "#proctImage");
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', 'proctImage');
setTheFileButton_Cover_SelectImageButton();
// alert("预览已生成!");
$("#imageUpload").prop("disabled", false);
});
⑥ php中图片上传前预览
ie屏蔽了上传文件功能
在IE的"工具=选项=安全=自定义级别=将文件上载到服务器时包含本地目录路径"开启这个选项就OK了
⑦ php图片上传前预览怎么实现!!
1.先创建一个file表单域,我们需要用它来浏览本地文件。
<form name="form1" id="form1" method="post" action="upload.php">
<input type="file" name="file1" id="file1" />
</form>
2.试下效果:
判断文件类型:
当用户选择了一个图片文件时,希望他能马上看到这张图片的缩略图,以便他能确认没有把自己的光屁股照片当作头像传到服务器上^_^。
在预览之前还得先判断一下用户选择的是不是一个图像文件,如果他想用一个.rar文件做头像的话我们也需要礼貌地提醒一下。
<form name="form2" id="form2" method="post" action="upload.php">
<input type="file" name="file2" id="file2"
onchange="preview()" />
</form>
Javascript函数实现,注意使用DOM方法getElementById来访问对象。不要再使用form
和input的name属性来访问对象了,只有IE才这么干。<script type="text/javascript">
function preview2(){
var x = document.getElementById("file2");
if(!x || !x.value) return;
if(x.value.indexOf(".jpg")<0
&& x.value.indexOf(".jpeg")<0
&& x.value.indexOf(".gif")<0){
alert("您选择的似乎不是图像文件。");
}else{
alert("通过");
}
}
</script>
3.试下效果:
这里有一个问题,如果用户选择了名为“fake.jpg.txt”的文件,这段脚本仍旧会认为这是一个合法的图像文件。一个可行的解决方案是先 把文件名转换成小写,再取文件路径的最后4到5位,判断一下文件的扩展名是否确为支持的图像文件扩展名。不过这种方案略显笨拙,也没有什么美感可言, 我们换一种方案:用“正则表达式”来判断文件扩展名。
<script type="text/javascript">
function preview3(){
var x = document.getElementById("file3");
if(!x || !x.value) return;
var patn = /\.jpg$|\.jpeg$|\.gif$/i;
if(patn.test(x.value)){
alert("通过");
}else{
alert("您选择的似乎不是图像文件。");
}
}
</script>
4.看看效果(可以自己创建一个“fake.jpg.txt”文件试试):
回到这段脚本上来,即使你还看不懂正则表达式那两行,但整段脚本的美感还是很明显的:简洁、直接、语义流畅,这与Web标准关于XHTML的要求是一致的,与Web设计师或开发者天生的“完美”主义也是一致的。
jjww一大段之后,转入重点——预览图片
预览功能的基本设计思路是很清晰的:创建一个img元素,再把文件域的value值赋值给img
元素的src属性。<form name="form4" id="form4" method="post" action="#">
<input type="file" name="file4" id="file4"
onchange="preview4()" />
<img id="pic4" src="http://blog.163.com/lgh_2002/blog/" alt="图片在此显示" width="120"/>
</form>
<script type="text/javascript">
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 = "file://localhost/" + x.value;
}else{
alert("您选择的似乎不是图像文件。");
}
}
</script>
5.试下效果:
如果用的是Firefox(或Opera),可能会发现什么也没有发生。是的,很不幸Firefox的安全策略不允许显示一个用户的本地 图像文件。不知道为什么要这么做,个人觉得图像文件并不会造成严重的安全性问题。即使是不久前比较热门的那个会引起Windows崩溃的jpeg文 件,要显示它的前提条件是用户自己选择了这个文件或者你知道这个文件在用户硬盘上的准确路径。所以我想这种策略很可能来自于一个“懒惰”的开发人员,并 不想多写一些程序来区分这个本地文件是一个图像文件还是一个恶意文件,Firefox对安全性的要求让他们有些过于敏感了。
让Firefox显示本地文件的唯一办法就是修改它的默认安全策略:
在Firefox的地址栏中输入“about:config”
继续输入“security.checkloari”
双击下面列出来的一行文字,把它的值由true改为false
然后你可以再试试上面预览,everything works well!可惜的是并不能要求所有的用户都去修改这个值(更不用说修改的过程还挺麻烦),所以毫无意义。我们能做的也许就是接受Firefox不能预览本地图片这种“可笑”的局面。
用DOM来创建对象
在上面的XHTML代码中,为了预览图片,事先加入了一个没有设置src的img对象。除去不美观、代码冗余之外,如果用户浏览器不支持 Javascript,不仅无法使用这个功能,还要接受页面上一个永远不会显示出来的破图。要解决这个问题,就需要在“运行时”再生成这个img对 象,途径还是DOM。
<form name="form5" id="form5" method="post" action="#">
<input type="file" name="file5" id="file5"
onchange="preview5()"/>
</form>
<script type="text/javascript">
function preview5(){
var x = document.getElementById("file5");
if(!x || !x.value) return;
var patn = /\.jpg$|\.jpeg$|\.gif$/i;
if(patn.test(x.value)){
var y = document.getElementById("img5");
if(y){
y.src = 'file://localhost/' + x.value;
}else{
var img=document.createElement('img');
img.setAttribute('src','file://localhost/'+x.value);
img.setAttribute('width','120');
img.setAttribute('height','90');
img.setAttribute('id','img5');
document.getElementById('form5').appendChild(img);
}
}else{
alert("您选择的似乎不是图像文件。");
}
}
</script>
6.试下效果:
这样就相对比较完美了。DOM和正则表达式一样,都是“包你不悔”的实 用技术,如果你希望更多了解、深入学习、或者顺利实践Web标准,DOM是不可或缺的。从本人最近的体会来说,Javascript+DOM+CSS蕴 藏着强大的能量,就看怎么释放它了。
7.最后帖上JQUERY的上传预览代码:
de><html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="http://blog.163.com/lgh_2002/blog/jquery.js"></script>
<script language="javascript">
$(function(){
var ei = $("#large");
ei.hide();
$("#img1").mousemove(function(e){
ei.css({top:e.pageY,left:e.pageX}).html('<img style="border:1px solid gray;" src="http://blog.163.com/lgh_2002/blog/' + this.src + '" />').show();
}).mouseout( function(){
ei.hide("slow");
})
$("#f1").change(function(){
$("#img1").attr("src","file:///"+$("#f1").val());
})
});
</script>
<style type="text/css">
#large{position:absolute;display:none;z-index:999;}
</style>
</head>
<body>
<form name="form1" id="form1">
<div id="demo">
<input id="f1" name="f1" type="file" />
<img id="img1" width="60" height="60">
</div>
<div id="large"></div>
</form>
</body>
</html>de>
⑧ 想做一个PHP图片上传前预览,麻烦帮忙看下为什么预览不能显示
ie8以下的版本应该能预览,ie9,火狐,谷歌等浏览器出于安全考虑,已经取消了显示本地文件的权限,只能读取缓存里的文件。
1.你可以用flash上传插件做预览;
2.你可以先把文件传到服务器临时文件里,如网络这是这样子;确定保存后再从临时文件里移动到上传目录;
3.你可以用兼容html5做预览,不兼容html5的浏览器反而支持你上面的这种预览方法,所以就可兼容目录所有浏览器了。。
如果要做经常上传图片的可以用第3种,如果就是偶尔插图上传头像的,就用第二种好了。。。
回答不专业。。爱看不看
⑨ 用php怎么实现要上传的图片 预览功能
获取从缓存你转移到新文件夹的图片名字
和保存图片的文件夹根目录下的路径,,
在你写的上传类里
$dirname($_SERVER["SCRIPT_NAME"]);获取根目录路径
调用1+2的方法返回给页面
通过JS关闭子窗口向父窗口传值并将父窗口<img name="pic" style="display:none;" />设置为display='block'
思路已经讲得很清楚了,以上
⑩ php图片上传前预览怎么实现
1,在Opera下,由于得不到上传框里的本地图片全部路径(只能得到文件名),所以无法预览图片。
2,用Firefox远程访问本文件时,出于安全原因,ff不允许预览本地的图片,在本地则可以。
注:这些在IE下均没有这些问题。