2013-07-31 24 views
-1

編輯:做 - PHP SQL使用回調

問題是繼:

$ 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 ?> 

- >這是不確定的

謝謝

+0

雖然回聲他們正在正確顯示.. ?? – Gautam3164

+0

是的,這只是爲了測試 – xhallix

+0

這是否工作:'$ pageTitle = $ showTitle ['Pagetitle'];'在while循環內? – vee

回答

1

你的函數不返回任何值,也沒有打印任何值。根據您的EDIT使用

global $pageTitle; 

在您的函數的開始和使用變量之前。

+0

你如何期待回調或者如果沒有回報價值,它將如何運作?有沒有發生奇蹟反射? – DevZer0

+0

我猜這裏的每個人都在玩猜謎遊戲。現在OP發表評論後,你可能會成爲贏家。讓我們等待OP的代碼。 – vee

+0

我沒有回調,但我注意到範圍問題,認爲我現在將解決這個問題.. – xhallix

1

只是mysql_free_result()

TRY
$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; 
+0

對不起也不管用。我也試過{$ table} – xhallix

+0

試試我的編輯..我忘了加free_result – Gautam3164

+0

沒有抱歉,不工作:( – xhallix

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'); 
+0

也不工作;) 沒有回調它工作正常,所以我認爲這不是因爲初始化變量 – xhallix

+0

以上將窩正確的,你需要檢查你的'數據庫表'。你的數據庫表中是否有數據?你也需要在這裏使用'LIMIT'。 –