uploadify不在joomla 2.5中工作

时间:2012-07-03 14:14:27

标签: joomla2.5 joomla-component

我使用uplodify joomla2.5 中开发了一个图库组件

我在my_component

的视图中使用了以下代码
    $session = & JFactory::getSession();
    $document = &JFactory::getDocument();
    $document->addScript('http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js');
    $document->addScript(JURI::root(true).'/administrator/components/com_mycomponent/uplodify/jquery.uploadify-3.1.min.js');
    $document->addStyleSheet(JURI::root(true).'/administrator/components/com_mycomponent/uplodify/uploadify.css');

    $UploadHeadJs ='

             // <![CDATA[
                jQuery.noConflict();
                jQuery(function() {
                console.log("load");    
                jQuery("#model_upload").uploadify({
                        "swf"      : "'.JURI::root(true).'/administrator/components/com_mycomponent/uplodify/uploadify.swf",
                        "uploader" : "index.php",
                        "formData" : {"option" : "com_mycomponent", "controller" : "uploadify","task":"uploadify.upload","'.$session->getName().'" : "'.$session->getId().'","cid":"'.$item->id.'","tmpl":"component"},
                        "method"   : "post",     
                        "cancelImg" : "'.JURI::root(true).'/administrator/components/com_mycomponent/uplodify/uploadify-cancel.png",
                        "uploadLimit" : 25,
                        "auto"      : true,
                        "buttonText" : "SELECT MODEL",
                        "debug"    : true,
                        "fileObjName" : "modelImage",
                        "fileSizeLimit" : "'.ini_get('upload_max_filesize').'B",
                        "fileTypeDesc"  : "Only 25 pictures allow(.jpeg,.gif)",
                        "fileTypeExts"  : "*.jpeg;*.jpg;*.JPEG;*.JPG;*.GIF;*.gif;*.png;*.PNG",
                        "multi"    : true,
                        "queueID"  : "queue",
                        "height"   : 22,
                        "onUploadError" : function(file, errorCode, errorMsg, errorString) {
                            console.log( errorMsg);
                         },
                        "onUploadSuccess" : function(file, data, response) {
                            console.log(response);
                         }
                        // Put your options here
                    });
                });
            //]]>';
            $document->addScriptDeclaration($UploadHeadJs);

在default.php中包含以下代码

<input type="file" name="modelUpload" id="model_upload"/>
       <div id="upload-queue-s" style="background:#CCCCCC">
        <div class="inQueu" id="queue"></div>
         <ul class="fileQueu">

            </ul>
        </div>

Uplodfiy正在正常加载,现在当我开始编码到控制器并且只是尝试回应一些东西以确认请求的网址是否正常工作它会重定向我的管理员的登录页面的Joomla

所以我的问题是为什么它会重定向我的登录页面,会话有问题吗?我如何获得请求表格uplodify到joomla控制器文件??

1 个答案:

答案 0 :(得分:0)

尝试在组件控制器的前端执行代码,因为不允许Joomla使用flash脚本访问管理员区域而无需登录。

我还使用uplodify开发了gallery组件,它工作正常。如果您需要,我可以为您提供代码。