我目前正在使用X-Cart,并且有一些员工(每个人都有一个X-Cart管理帐户)。我还开发了一些自定义的PHP网页(不是X-Cart模块),要求我的员工登录之前,他们可以访问这些网页。我希望我的员工使用他们现有的X-Cart帐户登录。
例如,每当我的员工访问自定义网页时,如果他们已经登录到X-Cart,他们应该没问题。如果没有,他们应该被重定向到X-Cart的管理登录页面。
我的问题是:我的PHP脚本如何检查用户是否已经登录到X-Cart?我试图包括auth.php,但我得到了错误消息"不能启动应用程序!请检查配置。"
非常感谢!
创建安全的管理页面非常简单:
- 在ROOT/admin/my_new_app.php中创建新页面
-
开始你的代码:
/* My new App is secure */ require './auth.php'; require $xcart_dir.'/include/security.php'; /* Put your App code in here... */ /* You may (and you should) end with assigning main template as: $my_main = 'my_new_app'; $location[] = array('New App!', '/admin/my_new_app.php'); /* But then you need to go and edit YOUR_SKIN/single/home.tpl and add this: {elseif $main eq "my_new_app"} {include file="admin/my_new_app.tpl"} and you need to create your template file: admin/my_new_app.tpl */
就是这样。如果您不是管理员,您将被重定向到登录页面(管理区)。
这里有一个重要的注意事项:如果页面上没有真正的表单,就不能在应用程序中使用post变量。您必须创建一个表单,然后xcart将创建一个隐藏的输入字段_formid
(并且它将具有一些散列值,例如:20b8e92504d1908bb1e3a264b9169f1e
)。一旦你有了它,你可以使用AJAX和post变量,每次包括_formid
和它的值。
我告诉你这是你得到的奇怪消息的原因:Can not initiate application! Please check configuration
。它不是来自x-Cart,我的猜测是:你的应用程序试图发布,但没有得到响应(缺少_formid
)。