使用PHP从MySQL数据库获取单个值
我需要获取Joomla站点中当前页面的访问级别。我可以通过以下方式获取页面id:使用PHP从MySQL数据库获取单个值,php,mysql,joomla,Php,Mysql,Joomla,我需要获取Joomla站点中当前页面的访问级别。我可以通过以下方式获取页面id: /* Define $jinput */ $jinput = JFactory::getApplication()->input; /* Get the current page id */ $page= $jinput->get('id'); 现在,我想查询数据库以返回当前页面的访问级别。表内容如下所示: page_id | access | ... 1234 | 10 |...
/* Define $jinput */
$jinput = JFactory::getApplication()->input;
/* Get the current page id */
$page= $jinput->get('id');
现在,我想查询数据库以返回当前页面的访问级别。表内容如下所示:
page_id | access | ...
1234 | 10 |...
因此,第1234页的访问id为10。这就是我试图得到的10:
/*打开连接*/
$link=mysqli_connect('localhost','user','pass');
if(!$link){
echo "No connection";
exit();
}
if (!mysqli_set_charset($link, 'utf8'))
{
echo 'Unable to set database connection encoding.';
exit();
}
if(!mysqli_select_db($link, 'datab')){
echo "Can't find database";
exit();
};
/* Find the access level of the current page */
$query = "SELECT access FROM content WHERE id=$page";
try {
$result=$link->query($query);
}
catch (PDOException $e){
$error="Error".$e->getMessage();
exit();
}
$row=mysql_fetch_array($result);
从一个页面获取一个值似乎非常复杂,但它不起作用!我知道这个查询是正确的,因为我在PHP和我的管理员中测试了它
请帮忙,谢谢 我想这就是你可能想要的:
$app = JFactory::getApplication();
$access = $app->getMenu()->getActive()->access;
echo "Access level = " . $access;
为什么要使用
mysqli.*
访问数据库?读一下First,因为我总是迷失在Joomla文档中。我知道我也可以使用$link=JFactory::getDbo();但结果是一样的。有没有快速进入页面访问级别的方法?比如:$page=$jinput->get('access');你用的是什么版本的Joomla?@Lodder:我用的是2.5.16这正是我想要的,谢谢!现在Joomla文档上的内容到底在哪里?Joomla文档页面上并不是所有内容都有。我回答的第一个关于菜单项的问题是,我看了一下,然后开始在本地主机上处理一些事情,以了解可能的情况:)例如:$app->getMenu()->getActive()
用于访问我上面提供的Joomla docs链接中提到的默认菜单项。然后,您所要做的就是查看#u\u菜单
数据库表的列并进行添加。所以它最终看起来像:$app->getMenu()->getActive()->access代码>或$app->getMenu()->getActive()->id代码>等等,我得到了第一部分:($app->getMenu()->getActive()。但我最初的想法是查询#u内容表以获得访问级别。嘿,也许你也可以帮我做这个: