我使用uploadify来上传文件,我想将其存储在一个文件夹中,具体取决于单选按钮的值。我有多个文件夹,我希望用户使用单选按钮选择其中一个文件夹,然后上传文件。
使用单选按钮的值,我将决定该文件夹,我还想将用户ID附加到上传的文件。如何将单选按钮#type.val()和_SESSION ['id']的值发送到uploadify.php
我尝试过这样做,但它不起作用
<script type="text/javascript">
$(document).ready(function() {
$('#file_upload').uploadify({
'uploader' : '/uploadify/uploadify.swf',
'script' : '/uploadify/uploadify.php',
'cancelImg' : '/uploadify/cancel.png',
'folder' : '/uploads/operatingSystem',
'auto' : true,
'scriptData': {'type':''},
'onSelectOnce' : function(event,data) {
$("#file_upload").uploadifySettings('scriptData', {'type' : ('#topic').val()});
});
});
</script>
在此我仍然不知道如何给出会话ID,因为这不起作用
'scriptData': {'type':'', 'id':''},
'onSelectOnce' : function(event,data) {
$("#file_upload").uploadifySettings('scriptData', {'type' : ('#topic').val(), 'id' : <?php echo $_SESSION['id']; ?> });
答案 0 :(得分:0)
通常它应该可以工作但是我的PHP 5.3.8如果我想使用会话变量它拼写$ _SESSION而不是_SESSION。也许是语言问题?
答案 1 :(得分:0)
我有同样的问题,我们最近将我们的开发服务器切换到5.3并且所有上传脚本都停止工作(使用$ _SESSION var,我通过post数据.-&gt; scriptData)。当我切换回5.2时,一切都像魅力一样。有些东西没有正确配置,我还没想到它。
答案 2 :(得分:0)
您可以通过formData轻松传递会话。这是一个示例代码:
JS代码:
$('#file_upload).uploadify({
formData : { '<?php echo session_name();?>' : '<?php echo session_id();?>' }
});
PHP代码:
$session_name = session_name();
if (!isset($_POST[$session_name])) {
exit;
} else {
session_id($_POST[$session_name]);
session_start();
}
我希望它会有所帮助。