我在本地服务器(USBWEBSERVER)中有这个:
$result = mysql_query("SELECT * FROM dbemployeekpw WHERE username LIKE '$param%'");
if(mysql_num_rows($result)==1) {
while($myrow = mysql_fetch_array($result)){
$formality = $myrow["formality"];
但是在Joomla中这不起作用,如何为Joomla数据库对象更改它?
这是我连接到Joomla DB的方法,并且可以在其他程序中正常工作:
$db =& JFactory::getDBO();
$query = "SELECT `email` FROM `brg4w_users`";
$db->setQuery($query);
$result = $db->loadObjectList();
$email = $result[0];
echo $email->email
所以我想在这个剧本中会有这样的东西(我不确定):
$db =& JFactory::getDBO();
$query = "SELECT * FROM dbemployeekpw WHERE username = 'camilo.uribe@kantarworldpanel.com'";
$db->setQuery($query);
$results = $db->loadAssocList();
foreach($结果为$ myrow)
{echo $ myrow-> fullname; }
但是不行,所以问题是,我怎么能在Joomla languaje中做到这一点:
if(mysql_num_rows($result)==1) {
while($myrow = mysql_fetch_array($result)){
$formality = $myrow["formality"];
再次感谢!
答案 0 :(得分:1)
首先,您应该阅读Joomla Documentation数据库查询。它提供了一些很好的信息和例子
你的问题看起来像这样:
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select('*');
->from($db->quoteName('dbemployeekpw'))
->where($db->quoteName('username') .'='. $db->quote('camilo.uribe@kantarworldpanel.com'));
$db->setQuery($query);
$results = $db->loadObjectList();
foreach ( $results as $result ) {
$result->formality;
}
如果您的数据库表是Joomla扩展程序的一部分,请将dbemployeekpw
替换为#__dbemployeekpw
。
确保从不使用mysql_*
进行数据库查询。另请注意,我尚未测试此查询,因此请告诉我它是否有效。
希望这有帮助