===
更新:
我认为现在我只是试图将数据库值放入我的组件php文件中,但同样,似乎很少有文档可以提供一个函数示例,它将返回此信息,就像在Wordpress中一样
所以我有一个名为membersarea_countries的表,它将记录我想要存储值的不同国家/地区。
我已经阅读过有关JTable和其他内容的内容,但我怎样才能简单地从此表中恢复记录?
$row = JTable::getInstance('membersarea_countries', 'Table', array());
但是这会返回0的布尔值。
如果有人可以的话,我真的很感激。
===
我一直在关注几位在线指南解释的内容,这几乎都是一样的,但我似乎永远不会回复我期待的价值观。
在组件中>成员区(我的组件),我有一个表设置允许我输入每个国家的记录,然后在该记录中存储uniqueRef,签名和URL。 (用于GeoIP目的)。
我已经创建了第一条记录,但是当我尝试使用以下代码时,教程建议,我不会在其中看到我的任何字段:
$app = JFactory::getApplication();
$params = $app->getParams();
$uniqueRef = $params->get('uniquereference');
$signature = $params->get('signature');
没有任何关于$ app的信息,也没有我在Joomla后端获得的字段的迹象。
我不明白发生了什么,或者我在这里应该做什么。 Wordpress使用简单的get_option函数。任何人都可以尝试帮助我吗?
答案 0 :(得分:1)
以下是有关JTable的详细文件的链接 -
https://docs.joomla.org/Using_the_JTable_class
首先,您需要使用以下代码创建JTable实例,并将表文件名更改为membersareacountries.php
JTable::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_membersarea/tables');
$row = JTable::getInstance('Membersareacountries', 'Table', array());
此文件中的JTable类/administrator/components/com_membersarea/tables/membersareacountries.php
-
<?php
defined('_JEXEC') or die();
class TableMembersareacountries extends JTable
{
public function __construct($db)
{
parent::__construct( '#__membersarea_countrie', 'id', $db );
}
}
然后您可以使用load方法获取任何记录。这接受该表的主键值 -
$id = 1;//change id as per your record
$row->load($id);
//read data
echo $row->id;
echo $row->title;