2014-05-12 4 views
0

저는 Zend와 PHP를 처음 접했습니다. 프로젝트의 경우 3 개의 Ajax Zend Forms를 함께 수집해야합니다. 나는 그것을하기 위해 세션을 사용해야하지만 그것을 어떻게하는지에 대한 정보는 찾을 수 없다는 것을 알고있다. 누군가 나를 도울 수 있습니까?Zend 세션에 데이터 저장

편집 :

public function formResAction(){ 

     $form = new Front_Form_ResPhone(); 
     $bdd_Reservation = new Front_Model_DbTable_Reservation(); 

     if($this->getRequest()->isPost()){ 
      if($form->isValid($this->getRequest()->getPost())){ 
       // Données non valides 

       $session = new Zend_Session_Namespace('forms'); 
       $formData = $form->getValues(); 
       $session->form1 = $formData; 
       print_r ($session->form1); 

       echo $this->view->bloc11Fid($formData); 
       exit; 
      } 
      else{ 
       // Données non valides 
//    echo "non valide"; 
      } 
     } 
     else{ 
      // Appel en GET 
//    echo "GET"; 
     } 
     echo $form; 
     exit; 

} 

    public function formFidAction(){ 

      $form = new Front_Form_FidForm(); 
      $bdd_Reservation = new Front_Model_DbTable_Reservation(); 

     if($this->getRequest()->isPost()){ 
      if($form->isValid($this->getRequest()->getPost())){ 
       // Données non valides 

       $session = new Zend_Session_Namespace('forms'); 
       $formData = $form->getValues(); 
       $session->form2 = $formData; 
       print_r ($session->form2); 

       echo $this->view->bloc11Fid2($formData); 
       exit; 
      } 
      else{ 
       // Données non valides 
//    echo "non valide"; 
      } 
     } 
     else{ 
      // Appel en GET 
//    echo "GET"; 
     } 
     echo $form; 
     exit; 

} 

    public function formFid2Action(){ 

      $form = new Front_Form_FidForm2(); 
      $bdd_Reservation = new Front_Model_DbTable_Reservation(); 

     if($this->getRequest()->isPost()){ 
      if($form->isValid($this->getRequest()->getPost())){ 
       // Données non valides 

       $session = new Zend_Session_Namespace('forms'); 
       $formData = $form->getValues(); 
       $session->form3 = $formData; 
       print_r ($session->form3); 

       echo $this->view->bloc11Res($formData); 

       exit; 
      } 
      else{ 
       // Données non valides 
//    echo "non valide"; 
      } 
     } 
     else{ 
      // Appel en GET 
//    echo "GET"; 
     } 
     echo $form; 
     exit; 

} 

public function resFormAction(){ 

     $form = new Front_Form_ResForm(); 
     $bdd_Reservation = new Front_Model_DbTable_Reservation(); 

     if($this->getRequest()->isPost()){ 
      if($form->isValid($this->getRequest()->getPost())){ 
       // Données non valides 

       $session = new Zend_Session_Namespace('forms'); 
       $formData = $form->getValues(); 
       $session->form4 = $formData; 
       print_r ($session); 

       $bdd_Reservation->insert($forms); 

       echo $this->view->bloc11Fel($formData); 
       exit; 


       exit; 
      } 
      else{ 
       // Données non valides 
//    echo "non valide"; 
      } 
     } 
     else{ 
      // Appel en GET 
//    echo "GET"; 
     } 
     echo $form; 
     exit;  
} 
+0

http://framework.zend.com/manual/1.11/en/zend.form.advanced.html#zend.form.advanced.multiPage –

+0

없다? 나는 그 문서를 이해하지 못한다 :/ – lovis91

답변

2

확인이 : 마법 getter와 setter를 가지고

//create a session namespace 
$session = new Zend_Session_Namespace('myapp'); 

$session->somevar = 'somevalue'; 

echo $session->somevar; //somevalue 

Zend_Session_Namespace.

따라서 세션 개체의 특성이 설정되어 있지 않으면 기본적으로 NULL이됩니다. 더 쉽게 synthax는

http://framework.zend.com/manual/1.12/en/zend.session.basic_usage.html

+0

고마워! 새로운 Session을 정의 할 키가 없습니까? like : $ session = new Zend_Session_Namespace ('myapp', $ somevar); ? – lovis91

+0

세션 네임 스페이스 "myform"을 사용하고 양식 매개 변수 배열에 대해 var를 사용할 수 있습니다. – Scriptlabs

+0

Like $ session = new Zend_Session_Namespace ('mywizard'); $ formname = 'wizard1'; $ 세션 -> {$ formname} = $ form-> getParams(); – Scriptlabs