0

我是 Joomla 模块开发的新手,想为 Joomla CMS 实现一个自定义模块。

我需要显示登录用户的销售历史。比如有[username] = "US001"的用户登录成功,去查看他做了哪些销售订单。并且模块通过将“US001”作为用户名参数传递给我的数据库并检索数据,以表格格式显示数据记录集。

  1. 如何检测登录用户,然后记住整个会话的 [用户名]?
  2. 如何将这个 [username] 参数(例如“US001”)传递给我的外部 URL 以检索数据记录集?我的每个用户销售历史的数据库都在另一个不同 IP 的服务器上。
  3. 查询数据后,如何将我的数据集返回到模块并在该模块上绘制我的表格?
  4. 附加功能是管理员的用户能够控制要显示的字段,例如。模块中表格上的“年龄”、“电子邮件”等。
4

1 回答 1

0

您想要访问用户对象。Joomla 已经内置了您需要的大部分内容,您只需拉出当前用户即可获得信息。

首先,您需要获取当前用户信息 -

`$user =& JFactory::getUser();`
  1. if ($user->guest)会告诉你用户是否登录,$user->name会给你用户名
  2. 您必须使用 GET 或 POST 将任何信息从 Joomla 传递到外部 URL。最简单的方法是将其作为 URL 查询字符串 (GET) 的一部分传递 external.url.com/database-page.html?username=name; ?> 或类似的
  3. 再次,GET 或 POST 您想要使用的值返回到包含您的模块的页面。
  4. 不确定您在这里的意思,但听起来您需要向模块添加参数(在 1.6 和更新版本中称为表单字段),以便您可以打开或关闭模块将获取的某些数据的显示。

用户对象教程 - http://docs.joomla.org/Accessing_the_current_user_object 参数 - http://docs.joomla.org/Standard_parameter_types 表单字段 - http://docs.joomla.org/Form_field

最后,听起来您最好创建一个组件而不是一个模块,除非您计划将您正在提取的数据库信息显示为将显示主要内容的另一个页面的一部分。

于 2012-03-19T13:02:39.613 回答