Yii-无控制器的路由
我正在使用需要用户身份验证的现有上载脚本。但是,由于我没有编写上传脚本,所以我几乎不可能阅读源代码并将其放入单独的视图和控制器文件中。问题是,如果脚本没有通过引导文件进行路由,则它无法访问Yii变量,从而无法访问用户登录信息 我尝试在用户登录时设置自定义会话变量。然而,它几乎不能工作,因为我的自定义会话将在Yii设置的会话之前过期Yii-无控制器的路由,yii,Yii,我正在使用需要用户身份验证的现有上载脚本。但是,由于我没有编写上传脚本,所以我几乎不可能阅读源代码并将其放入单独的视图和控制器文件中。问题是,如果脚本没有通过引导文件进行路由,则它无法访问Yii变量,从而无法访问用户登录信息 我尝试在用户登录时设置自定义会话变量。然而,它几乎不能工作,因为我的自定义会话将在Yii设置的会话之前过期 如果有任何帮助,我们将不胜感激。您正在使用mvc模式的框架,因此控制器是路由请求的首选方式。根据您的问题,我建议您使用htaccess文件路由到所需文件,并通过Yii
如果有任何帮助,我们将不胜感激。您正在使用mvc模式的框架,因此控制器是路由请求的首选方式。根据您的问题,我建议您使用htaccess文件路由到所需文件,并通过Yii处理其他文件。将代码从现有源复制到新的Yii控制器/操作。。。完成:D由于脚本的编写方式,我只能找到一种方法。这将涉及重新编写脚本的某些元素
public function actionIndex() {
//Start capturing the output from the script
ob_start();
require_once('filemanager/dialog.php');
//Finish capturing output, and save to a variable
$output = ob_end_clean();
$this->render('index', array('output' => $output));
}
if(!isset($_SESSION))
{
session_start();
}
您的下一个问题是没有加载任何脚本和样式表,因为供应商没有使用相对文件路径,也因为您刚刚删除了标题。您需要重新编写大量脚本以包含必要的文件。幸运的是,您现在可以访问Yii函数,因此可以使用资产管理器发布脚本所需的所有js和css文件
最后一个(希望如此!)问题是脚本页面使用的URL。目前,它们都指向脚本中的文件。您需要重写这些以使用Yii路由。幸运的是,在main file dialog.php中,您应该可以访问所有正常的Yii函数,因此您可以将$baseUrl设置为$this->createUrl()等。如果需要向控制器添加额外操作,您可以按照上面的模式调用其他文件,如脚本中的upload.php文件
希望所有的工作为你 请用更多的努力和比喻的方式来阐述你的问题。好的,让我们再试一次。如果我没有控制器和视图文件,我如何创建一个路由,使Yii直接指向服务器上的脚本文件(例如localhost/upload.php)您的Yii应用程序能否访问与上载脚本相同的数据库?您能否将脚本文件重新定位到另一个文件夹?脚本文件是自包含的,还是依赖其他文件进行操作?@JoeMiller我使用的脚本是responsivefilemanager.com,它有一个引导文件config.php和其他操作php文件。