2011-12-14 106 views
0

我有2個php頁面:query.phpresult.php將結果集從一個頁面返回給另一個PHP

query.php,我執行查詢(選擇)語句。它返回一個結果

$rs = mysql_query($query); 

現在我想從query.php返回此ResultSet到result.php另一個頁面,並使用它。就像這樣:

query.php

return $rs 

result.php

$result = executeQuery($query) // we get the resultset in this variable 
while ($row == mysql_fetch_array($result){ 
//do something 
} 

如果上述不建議,請給我提供的替代品。但我想在不同的頁面查詢功能和結果集。

回答

1

你可以只包括results.php在query.php頁面,如果你只是希望保持代碼單獨在源文件,但實際上並不需要重定向從一個網頁到另一個:

在query.php:

$rs = mysql_query($query); 
include "results.php"; 

在results.php:

while ($row == mysql_fetch_array($rs){ 
    //do something 
} 

至於試圖從一個網頁到 「迴歸$ RS」 到另一個,這不是PHP是如何工作的。 return語句只在一個函數內有效。如果您想實際上將數據從一個PHP頁面傳遞到另一個頁面,並且將重定向到其他頁面,那麼您需要使用會話,cookie,將它傳遞到URL中(即使用GET)或使用curl並添加它作爲一個POST var。

+0

但返回頁面之間的數組可能不是嗎?所以如果我可以在query.php頁面中創建一個數組並將其返回給results.php頁面,我可以使用它。但堅持如何做到這一點?有什麼幫助嗎? – 2011-12-14 04:59:59

+0

你不能從一個頁面「返回」某個頁面到另一個頁面。您將函數的結果返回到調用該函數的代碼中的位置。您不能只在頁面中創建數組,然後將其「返回」到另一個頁面。也許如果你給出了更多的細節,爲什麼你想要有兩個PHP文件(編輯你原來的文章不要在這個評論主題添加細節),我們可以提供更多的幫助。 – TheOx 2011-12-14 05:07:21

0

如果確實如此,請將結果集存儲在數據庫的某處或某個文件中,併爲每個結果指定一個唯一的名稱。然後將該名稱傳遞給下一頁,以便可以檢索。

query.php例如將重定向到result.php?result_set=ab24sdfsdfklls

這有一個額外的好處,你可以經常使用result_set,只要你想。訪問者在一次訪問中可以有多個結果集。他們可以與其他人共享結果集頁面的網址等。

只要確保最終修剪數據存儲,因爲它將會持續增長,但這完全是另一回事。

相關問題