[英]Display MySQL select query results in Joomla framework
我正在尝试从 Joomla 页面中的 Joomla MySQL 数据库中获取查询结果。 print_r
正在返回正确的结果,数据库连接是正确的。 但是我无法显示已获取的数据。 这是我目前为 print_r 得到的结果:
mysqli_result Object (
[current_field] => 0
[field_count] => 2
[lengths] => [num_rows] => 2 [type] => 0
)
这是我正在使用的代码:
{source}
<script language="javascript" type="text/javascript">
</script>
<?php
// init Joomla Framework
define( '_JEXEC', 1 );
define( 'DS', DIRECTORY_SEPARATOR );
define( 'JPATH_BASE', realpath(dirname(__FILE__).DS.'..' ));
require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
$mainframe = JFactory::getApplication('site');
// DBQuery
$database =& JFactory::getDBO();
$query = "SELECT city_id, city_name FROM indytoad_city;";
$database->setQuery($query);
$result = $database->query();
print_r($result);
?>
{/source}
请让我知道我需要修改的方式、位置和内容,以显示查询结果。
使用loadAssocList()
而不是query()
,即
$result = $database->loadAssocList();
它从数据库中获取数据作为关联数组。
Joomla 文档: http : //docs.joomla.org/JDatabase :: loadAssocList/11.1
我不想详细介绍 Joomla 中用于从数据库检索结果的约定。 这完全取决于开发人员。
之所以没有得到值,是因为您可能将结果数组视为关联数组。 它实际上是一个 stdClass 对象!
用
$result->city_id
获取city_id的值,如果存在多个嵌套类,则可以将其用作
$result->parent->child
希望这可以帮助 !
有关更多信息,您可以查看此信息-> https://stackoverflow.com/a/931419/122840
也代替
$result = $database->query();
用 :
$result = $database->loadAssocList();
这会将结果加载到关联数组中!
所以你用
$result['列']
得到结果!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.