5

joomla は初めてで、viruemart のアドオンであるコンポーネントを構築して、ユーザーがユーザー領域の請求書 PDF にアクセスできるようにしようとしています。これを行うには、データベースからこの情報を取得する選択クエリを作成する必要があります。

私はそれをいじっていて、次のことを思いつきましたが、何もしないようです:

$id =JFactory::getUser()->id;
$db =& JFactory::getDBO();
$sql = "SELECT * FROM jos_vm_orders"; 
$db->setQuery($sql);
$options = $db->loadObjectList();
return $options; 

何か不足していますか?

4

4 に答える 4

9

データベースクエリについては、このドキュメントを確認できます - http://docs.joomla.org/API16:JDatabaseQuery

テーブルプレフィックスをクロスチェックしてください。または、これを試してください-

$db =& JFactory::getDBO();
$query = $db->getQuery(true);
$query->select('*');
$query->from('#__vm_orders'); 
$query->where('id = 1');   //put your condition here    
$db->setQuery($query);
//echo $db->getQuery();exit;//SQL query string  
//check if error
if ($db->getErrorNum()) {
  echo $db->getErrorMsg();
  exit;
}
return $db->loadObjectList();
于 2012-11-01T12:08:42.557 に答える
2
$db =& JFactory::getDBO();       
$query  = $db->getQuery(true);
$query->select('*');
$query->from('#__vm_orders');      
$db->setQuery($query);  
$options = $db->loadObjectList();
return $options;

また

$db =& JFactory::getDBO();
$sql = "SELECT * FROM #__vm_orders";
$db->setQuery($sql);  
$options = $db->loadObjectList();
return $options;

これを試して、問題があればお知らせください。

于 2012-11-01T12:14:58.320 に答える
1
$id =JFactory::getUser()->id;
$db =& JFactory::getDBO();
$sql = "SELECT * FROM #__vm_orders"; 
$db->setQuery($sql);
$options = $db->loadObjectList();
return $options;

また、Joomla 2.5 以降のバージョンで複雑なクエリを使用する場合は、クエリ チェーンを使用することをお勧めします。ここでそれについて読んでください:http://m4extensions.com/index.php/tutorials/3-access-database-from-your-joomla-extension

于 2014-02-23T11:13:55.920 に答える
1

これを試して

$user =JFactory::getUser();
$userId = $user->id;//also u get name,email etc
$db =& JFactory::getDBO();
$sql = "SELECT * FROM table where condition"; 
$db->setQuery($sql);
$db->query();
$options = $db->loadObjectList();
return $options; 
于 2012-11-01T12:35:20.457 に答える