Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PHP从MySQL数据库获取单个值_Php_Mysql_Joomla - Fatal编程技术网

使用PHP从MySQL数据库获取单个值

使用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 |...

我需要获取Joomla站点中当前页面的访问级别。我可以通过以下方式获取页面id:

/* 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内容表以获得访问级别。嘿,也许你也可以帮我做这个: