2017-02-03 1 views
-2

Ich bin der Neuling in Codeigniter. Ich setze die Textbox-Werte auf Sitzung und gehe zur nächsten Seite und wenn ich auf die Zurück-Schaltfläche auf der zweiten Seite klicke, sollten die Daten der 1. Seite immer noch in der Textbox sein. Wie kann ich das machen? Bitte hilf mir.Wie man Sitzungsdaten zu Textbox in Codeigniter setzt

Controller-Code:

<?php 
defined('BASEPATH') OR exit('No direct script access allowed'); 

class Welcome extends CI_Controller { 


public function index(){ 
    $this->load->view('welcome_message'); 
} 
public function page1(){ 

    $this->session->set_userdata('page1',$this->input->get()); 
    $this->config->load('config'); 
    $this->config->set_item('sess_expiration', '60'); 
    $this->load->view('pg2'); 
} 
public function page2(){ 

    $this->session->set_userdata('page2',$this->input->get()); 
    $this->config->load('config'); 
    $this->config->set_item('sess_expiration', '60'); 
    $this->load->view('pg3'); 
} 
public function page3(){ 
    $this->config->load('config'); 
    $this->config->set_item('sess_expiration', '60'); 
    $sess_data=$this->session->userdata(); 
    $ses_key = key($sess_data); 
    if (empty($this->session->userdata("page1"))) 
    { 
     echo "Session has been Expired~!"; 
     $this->session->unset_userdata('page1'); 
     $this->session->unset_userdata('page2'); 
     //redirect(site_url(),'refresh'); 
    } 
    else 
    { 
    $q1 = ($sess_data['page1']); 
    $q2 = ($sess_data['page2']); 

    $result1 = ''; 
    $result2 = ''; 
    $result3 = ''; 
    $result4 = ''; 

    $result5 = ''; 
    $result6 = ''; 
    $result7 = ''; 
    $result8 = ''; 

    for ($i = 0; $i < count($q1); $i++) 
    { 
     $key=key($q1); 
     $val=$q1[$key]; 
     if ($val<> ' ') 
     { 
      if ($key === 'input1') 
      { 
       $result1 = $val; 
       //echo $result1; 
      } 
      else if ($key === 'input2') 
      { 
       $result2 = $val; 
       //echo $result2; 
      } 
      else if ($key === 'input3') 
      { 
       $result3 = $val; 
       //echo $result3; 
      } 
      else 
      { 
       $result4 = $val; 
       //echo $result4; 
      } 

      echo $key ." = ". $val ." <br> "; 
     } 
     next($q1); 
    } 


    for ($i = 0; $i < count($q2); $i++) 
    { 
     $key=key($q2); 
     $val=$q2[$key]; 
     if ($val<> ' ') 
     { 
      if ($key === 'input5') 
      { 
       $result5 = $val; 
       //echo $result5; 
      } 
      else if ($key === 'input6') 
      { 
       $result6 = $val; 
       //echo $result6; 
      } 
      else if ($key === 'input7') 
      { 
       $result7 = $val; 
       //echo $result7; 
      } 
      else 
      { 
       $result8 = $val; 
       //echo $result8; 
      } 

      echo " <br> <br> " . $key ." = ". $val ." <br> "; 
     } 
     next($q2); 
    } 

    //$this->testing_model->add_data('sess_table',['val'=>$result1,'val2'=>$result2]); 
    $this->testing_model->add_data('user_table',['id'=>"default", 'text2'=>$result1, 'text3'=>$result2, 'text4'=>$result3, 'text5'=>$result4]); 
    $this->testing_model->add_data('sess_table',['id'=>"default", 'val'=>$result5, 'val2'=>$result6, 'val3'=>$result7, 'val4'=>$result8]); 

     echo "Successfully Saved to Database!"; 
     $this->session->unset_userdata('page1'); 
     $this->session->unset_userdata('page2'); 


    //$querydata=$this->testing_model->query('select * from sess_table'); 
    //print "<pre/>"; 
    // print_r($querydata); 
    // foreach ($querydata as $key => $value) { 
    // print_r(json_decode($value->val,true)); 
    // print_r(json_decode($value->val2,true)); 
    // // echo json_decode($value->val.' ---- '.$value->val2; 
    // } 
    } 
    } 
} 

Ansicht 1:

<!DOCTYPE html> 
<html lang="en"> 

</head> 
<body> 
page 1 
<form method="get" action="<?= base_url('welcome/page1') ?>"> 
    input 1 <input name="input1" type="text"/> <br/> 
    input 2 <input name="input2" type="text"/> <br/> 
    input 3 <input name="input3" type="text"/> <br/> 
    input 4 <input name="input4" type="text"/> <br/> 
    <input type="submit" value="go"/> 

</form> 

</body> 
</html> 

Ansicht 2:

<!DOCTYPE html> 
<html lang="en"> 

</head> 
<body> 
page 2 

<form method="get" action="<?= base_url('welcome/page2') ?>"> 
    input 1 <input name="input5" type="text" /> <br/> 
    input 2 <input name="input6" type="text" /> <br/> 
    input 3 <input name="input7" type="text" /> <br/> 
    input 4 <input name="input8" type="text" /> <br/> 
    <input type="submit" value="go"/> 
    <a type="button" href="<?= base_url('welcome/page2') ?>">Back</a> 
</form> 

</body> 

Ansicht 3:

<html> 
<head> 
    <title></title> 
</head> 
<body> 
<form method="get" action="<?= base_url('welcome/page3') ?>"> 
<input type="submit" value="Save"/> 
<a type="button" href="<?= base_url('welcome/page1') ?>">Back</a> 
</form> 
</body> 
</html> 
+0

Ihren Code anzeigen. –

+0

Ich habe meinen Code in eigene Antwort. Bitte hilf mir. –

+0

können Sie Ihre Frage bearbeiten @KyawZinWai – shafiq

Antwort

0

Ladebibliothek Sitzung in Konstrukt

class Welcome extends CI_Controller { 

public function __construct() 
{ 
    parent::__construct(); 
    $this->load->library('session'); 
} 

Öffnen Sie Ihre autoload.php in Anwendungen/config/autoload.php

$autoload['libraries'] = array('session'); 
+0

Es funktioniert nicht. :( –

0

Die Sitzungsdaten ist die am wenigsten Ihrer Probleme.

Zunächst ruft $this->load->view('pg2'); Ihre anderen Funktionen in Ihrem Controller nicht auf, es lädt eine Ansicht namens 'pg2'. In Ihrer Frage zeigten Sie nicht die Namen der Aussicht, aber wenn ‚View 1‘ eine Datei mit dem Namen pg1.php im/Ansichten Ordner ist, könnte der Controller-Funktion wie folgt aussehen:

public function pg1() { 
     $this->session->set_userdata('page1',$this->input->get()); 
     $this->load->view('pg1'); 
} 

Und dann Sie Ich muss lernen, wie man Daten zur Anzeige in Sichten übergibt ... Versuchen Sie, die Dokumente zu lesen, zum Beispiel hier ist die Seite, auf der Ansichten funktionieren: https://www.codeigniter.com/user_guide/general/views.html

Verwandte Themen