我有一个页面,用户可以上传图像然后四处移动并使用jquery draggable和jquery resizable调整大小。
为了节省对服务器的多个请求,是否可以使用本地存储的图像版本来加快速度,然后有一个保存按钮,只在请求时将图像上传到服务器。
我试图这样做不成功,因为我只获取文件的临时位置
<?
$posted=$_REQUEST['posted'];
if($posted!='')
{
$image = $_FILES['file']['tmp_name']."/".$_FILES['file']['name'];
?><img src="<? echo $image ?>" width="480" height="360" /><?
echo "posted=".$image;
}
?>
<form action="#" enctype="multipart/form-data" method="post">
<input type="hidden" name="posted" value="1" />
<input type="file" id="file" name="file" size="30" />
<input name="submit" type="submit" value="send" />
</form>
这可能吗?
答案 0 :(得分:0)
您必须使用move_uploaded_file()
将上传的文件移动到所需的目的地。
答案 1 :(得分:0)
如果您的意思是“在浏览器中调整用户计算机上的图像大小,然后在完成裁剪后上传”,则为“
据我所知,除非您使用Flash或Java插件,否则无法实现。
$_FILES['file']['tmp_name']
变量包含服务器上上传文件的临时位置。系统会定期删除临时文件,因此要将上传的文件保留在服务器上,您需要使用move_uploaded_file()
。
答案 2 :(得分:0)
根据手册,超级全球$_FILES
是
An associative array of items uploaded to the current script via the HTTP POST method.
因此,为了使用此全局,您必须上传图像。我会说,在你使用jquery上传图像并且只有在用户选择了他想要的尺寸后才使用move_uploaded_file()
,你可以避免多次向服务器发出请求。
仅使用javascript和PHP无法按照您的建议进行操作。据我所知,至少。