从PHP函数获取数组

时间:2011-09-19 18:01:58

标签: php mysql mysqli

我的db表看起来像那个

enter image description here

我正在尝试从此功能获取页面标题和内容

function page($current, $lang){
    global $db;
    $txt='txt_'.$lang;
    $title='title_'.$lang;
    $data=$db->query("SELECT '$txt', '$title' FROM pages WHERE `id`='$current'");
    $data=$data->fetch_array(MYSQLI_BOTH);
    return $data;
}

然后在索引页面的开头获取数组值

$data=page($id, $lang);

并使用类似这个例子

<title><?=$data[1]?></title>

但每次都得到相同的结果title_en(en是我的语言变量。)。我的代码出了什么问题?

1 个答案:

答案 0 :(得分:6)

不要单引号字段。 MySQL将其解释为字符串。

$data=$db->query("SELECT $txt, $title FROM pages WHERE `id` = $current");

或者你可以在MySQL中使用反引号。但请注意,$current仍然不应该假设它是一个整数字段。

$data=$db->query("SELECT `$txt`, `$title` FROM pages WHERE `id` = $current");