Php 如何预览长格式的图像
我想在上传一张图片之前先预览一下,然后再上传一张有名字、年龄等字段的表单。我已经尝试过ajax解决方案。代码可以独立运行。 但是当我把代码放入表单时,它就不起作用了。请帮助我 代码如下: 通过Ajax进行图像预览的独立代码Php 如何预览长格式的图像,php,jquery,ajax,Php,Jquery,Ajax,我想在上传一张图片之前先预览一下,然后再上传一张有名字、年龄等字段的表单。我已经尝试过ajax解决方案。代码可以独立运行。 但是当我把代码放入表单时,它就不起作用了。请帮助我 代码如下: 通过Ajax进行图像预览的独立代码 <form id="imageform" method="post" enctype="multipart/form-data" action='ajaximage.php'> Upload your image <input type="file" na
<form id="imageform" method="post" enctype="multipart/form-data" action='ajaximage.php'>
Upload your image <input type="file" name="photoimg" id="photoimg" />
</form>
上传你的图片
我的表格是
<form name="iupload" action="index.php" method="post" >
Name <input type="text" name="myname" ><br/>
Age <input type="text" name="age" >
<input type="file" name="photoimg" id="photoimg" />
<input type="submit" name="submit" value="upload">
<div id='preview'>
</div>
</form>
名称
年龄
您无法在浏览器中预览本地图像。浏览器无法访问本地文件系统。您需要使用Flash、Java或Active-X插件来执行此操作您尝试过其他AJAX上载插件吗?我亲自尝试过这个,它对我有效
这里还有一个关于如何使用它的教程:
我想说的是,您可以在上传到所有支持、和旧版本IE(版本7及以下)的浏览器之前显示本地图像 使用文件API,可以使用以下方法获取本地blob。IE8测试版引入了一个“伪造文件”来隐藏本地文件URL,以修复所解释的安全问题。但在旧版本中,您应该能够“利用”这个安全漏洞 像这样的东西可以工作():
您通常不需要这样做,因为浏览器的“文件选择”对话框显示了一个缩略图和有关文件的信息。@hakre用户需要查看上传图像(化身)的预览。您无法使用javascript访问
元素的值。出于安全原因,这是被阻止的。所以你不能在这里创造任何东西。您可能正在寻找一些花哨的HTML5内容,但您的问题并没有说明这一点。请提供一些参考,我认为我们可以通过ajax、php和js来实现。如果浏览器可以访问本地文件系统,这将是一个巨大的安全漏洞。我们会有恶意网页窃取我们的文件。
$('form input[type=file]').change(function() {
var src;
if ('files' in this) { // File API supported (webkit/FF)
var obj = this.files[0];
src = window.URL ?
window.URL.createObjectURL(obj) :
window.webkitURL.createObjectURL(obj);
} else {
if (/fake/.test(this.value)) {
// fallback to whatever (IE8, IE9)
} else {
src = this.value; // exploits the IE security hole
}
}
$(new Image()).attr('src',src).appendTo('body'); // the local image!
});