php – 在uploadify中传递$_SESSION
作者:互联网
我正在使用uploadify来允许在表单中上传图片.
我遇到的问题如下:
要提交表单,用户必须登录.
图像,理想情况下将上传到路径/上传/
问题是,uploadify的swf连接的php脚本没有得到当前活动的会话.这意味着我做不到
<?php
// this would be the backend script that handles the upload
session_start();
$username = $_SESSION['username'];
$upload_path = "/uploads/$username/";
?>
现在,uploadify允许您以JSON格式将$_POST信息传递给php脚本.
所以我能做到
scriptData:{username:’<?php echo $_SESSION ['username']?>‘}
在javascript部分和PHP将收到变量.但这并不安全……有人可能会对这些信息进行调整并使{用户名:无论他想要什么}.
我该如何解决这个问题?
tl; dr – 使用uploadify时,如何在后端脚本中使用现有的$_SESSION变量?
解决方法:
不安全的是:
使用请求发送会话ID,并让服务器使用该会话ID(如果已发送).
当我使用swf上传器时,我做到了.像这样的东西:
if ( !empty($_POST['sess']) ) {
session_id($_POST['sess']);
}
session_start();
在您发出请求的页面上,您将获得会话ID:
<?php echo session_id(); ?>
应该工作,但也不是很安全.我的建议:不要使用swf uploader =)HTML5引入accept =“mimetypes”和多个作为文件输入属性. See the specs.如果客户端不支持这样的HTML5:太糟糕了
标签:php,uploadify 来源: https://codeday.me/bug/20190530/1187128.html