完成 - php sql使用回调

时间:2013-07-31 04:39:25

标签: php sql callback

编辑:

问题如下:

$ pageTitle不能在函数外部使用。

这是我到目前为止所得到的:

function getMetaData($table, $rows){
    echo $table;
    echo $rows;
    $selectTitle =  "select * from $table";
    $getTitle    = mysql_query($selectTitle);
    while ($showTitle = mysql_fetch_assoc($getTitle)){
        $pageTitle = $showTitle[$rows];
    }
}

getMetaData('metadata', 'Pagetitle');

我的输出

<?php echo $pageTitle ?>

- &GT;这是未定义的

谢谢

3 个答案:

答案 0 :(得分:1)

只需尝试使用mysql_free_result()

$selectTitle =  "SELECT * FROM '".$table."'";
$getTitle    = mysql_query($selectTitle);
$pageTitle = '';
while ($showTitle = mysql_fetch_assoc($getTitle)){
    $pageTitle = $showTitle[$rows];
}
return $pageTitle;               //Return even the pageTitle.

mysql_free_result()将释放与结果相关的所有内存。

根据你的编辑尝试:

$pageTitle = getMetaData('metadata', 'Pagetitle');
echo $pageTitle;

答案 1 :(得分:1)

您应首先初始化variable $pageTitle,例如

function getMetaData($table, $rows){
    echo $table;
    echo $rows;
    $selectTitle =  "select * from $table";
    $getTitle    = mysql_query($selectTitle);
    $pageTitle='';
    while ($showTitle = mysql_fetch_assoc($getTitle)){
        $pageTitle = $showTitle[$rows];
    }
    return $pageTitle; // returning the variable will work here
}
echo getMetaData('metadata', 'Pagetitle');

答案 2 :(得分:1)

您的函数不会返回任何值,也不会打印任何值。根据您的EDIT使用

global $pageTitle;

在函数的开头和使用变量之前。