2014-01-22 70 views
0

如何通過php類中的所有函數保留post變量? 我在函數中訪問數組中的post變量。但是當我嘗試訪問另一個函數中的那些函數時,它只反映數組中的最後一個元素。訪問數組中的post變量

foreach ($questionAry as $questionID) 
{ 
     $questionName = $this->htmlID_questionID . $questionID; 

     $question_answer = $_POST[$questionName];     

     $_SESSION['qusID'] = $questionID; 
     $_SESSION['qusanswer'] = $question_answer; 
} 

我想訪問$ questionID和$ question_answer在另一個函數。我試圖通過會話來完成,但我只能訪問最後一個值。

+0

你做得很好。將每個$ _POST []元素定義爲一個變量並將其用於結束,如果需要在頁面之間進行解析,請將其保存在** session **中。需要時再調用每個會話。 – datelligence

+0

我的問題是我可以只訪問array.how的最後一個元素,我可以獲取那裏的所有值嗎? – devuser

+0

好的,$ questionID = $ _ POST [$ questionID]; $ question_answer = $ _POST [$ questionName] ;.在這裏你有兩個由每個$ _POST [$ questionName]和$ _POST [$ questionID]中的許多元素組成的數組。現在要使用它們,你必須用foreach($ questionID作爲$ q_id => $ val_qid)循環訪問數組,這樣你可以獲取每個元素,插入表中,或者做任何需要做的事情。 – datelligence

回答

0

你的循環是錯誤的......這些人被覆蓋掉在每個迭代上

$_SESSION['qusID'] = $questionID; 
    $_SESSION['qusanswer'] = $question_answer; 

您需要使用索引循環,像這樣......

foreach ($questionAry as $key => $questionID) 
{ 
     $questionName = $this->htmlID_questionID . $questionID; 

     $question_answer = $_POST[$questionName];     

     $_SESSION['qusID'][$key] = $questionID; 
     $_SESSION['qusanswer'][$key] = $question_answer; 
} 

編輯:根據下面的談話,嘗試一下。

function getvalues() { 
    $questions = array(); 
    $jsonEncoded = (get_magic_quotes_gpc()) ? stripslashes($_POST[$this->htmlID_questionIDAry]) : $_POST[$this->htmlID_questionIDAry]; 
    $jsonDecoded = json_decode($jsonEncoded); 

    $questionAry = explode(",",$jsonDecoded->list); 
    $instr = ""; 

    foreach ($questionAry as $key => $questionID) { 
     $questions[$key]['name'] = $this->htmlID_questionID . $questionID; 
     $questions[$key]['answer'] = $_POST[$questionName]; 
    } 

    return $questions; 
} 


$parsedQuestions = getvalues(); 

name_of_other_function($parsedQuestions); 

function name_of_other_function($parsedQuestions){ 
    print_r($parsedQuestions); 
} 
+0

好的thanks.without使用會話我怎麼能讓這些post變量可用於另一個功能? – devuser

+0

在同一頁?如果您發佈完整的功能或者文件的要點,它可能會有所幫助。 除非需要變量持續保持頁面加載,否則不應使用會話。 – mattbeck

+0

在不同的功能相同的頁面。 – devuser