>我使用 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);
默认情况下.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正在正确加载,现在当我开始编码到控制器中并尝试回显某些内容以确认请求的URL是否正常工作时,它将重定向我到joomla管理员的登录页面
所以我的问题是为什么它会重定向我登录页面,会话有问题吗? 我怎样才能将申请表更新到 Joomla 控制器文件?
尝试在组件控制器的前端做代码,因为不允许 Joomla 在没有登录的情况下刷新脚本以访问管理员区域。
我还使用上传部分开发了图库组件,它工作正常。 如果你需要它,我可以为你提供代码。