如何在1页上管理许多查询?

时间:2011-05-13 07:53:14

标签: php mysql

在页面上管理多个查询的最佳方法是什么。我在一个页面上使用4个不同的查询,所有这些查询只是按顺序使用变量$ query,因此页面上的每个查询都位于不同的区域,并且当页面从上到下加载时,每个查询都会完成。

我已将每个查询放在一个单独的文件中,并将其包含在我回显数据的区域中。这不好吗?我应该将它们全部放在一个文件中,并为每个查询使用一个单独的变量,例如$ result 1,$ row1然后是第二个查询$ result 2,$ row2依此类推第四个。

由于

2 个答案:

答案 0 :(得分:1)

论坛,在线购物车程序等每页通常会有10或20多个查询。 4不是ganna直接杀了你。

答案 1 :(得分:0)

就我个人而言,我认为总是使用相同的变量进行查询并不是一个好主意,特别是对于应该具有有意义名称的结果,例如$ numberOfMessages,$ countUsers ...请记住,最重要的是你的代码可能必须保留它的其他人可读。花一点时间为变量写一个有意义的名字。

说到查询,我认为在一个页面上有4个查询不是问题,只要确保查询只检索你想要的数据...花一些时间来优化查询,因为从mysql中获取大量数据是性能杀手。

编辑

例如我使用:

//import the db configuration
require_once (JPATH_COMPONENT . DS . 'libs/confDbSugarcrm.php');
$db =& JFactory::getDBO();
//list your queries (i use joomla classes in this example)

$sqlUsers = "select id, name from table_users";
$db->setQuery($sqlUsers); 
$usersIdName = $db->loadObjectList();


$sqlNumberOfMessages = "select count(id) as how_many from table_messages";
$db->setQuery($sqlNumberOfMessages); 
$numberOfMessages = $db->loadResult();

依此类推......这样你的代码就是可读的,你可以避免冲突变种名称......我认为你的生活更容易(对变量使用不同且有意义的名称是最佳做法)。