2012-03-28 16 views
4

meiner Ansicht nach mit GET-Methode an die Steuerung:, wie ein Formular Daten schreiben in codeigniter

<form action="<?=base_url()?>index.php/frontend/main_con/temp"> 
    <input type="text" name="temp"> 
    <input type="submit"/> 
</form> 

Controller:

function temp(){ 
    echo $_GET['temp']; 
} 

ich in der Lage kippe diese Funktion zu erreichen, und ich habe einen Fehler

Es wurde ein Fehler Der URI Begegnen Sie eingereichten Zeichen hat nicht zulässig.

So, wie Formulardaten in der Steuerung mit GET-Methode übergeben? Danke im Voraus.

+0

Ich bin nur neugierig, warum Sie jemals POST verwenden müssen GET über Werte abzurufen? – Catfish

Antwort

2
parse_str($_SERVER['QUERY_STRING'],$_GET); 

NUR für mich gearbeitet, nachdem ich die folgende Zeile in Anwendungen/config/config.php hinzugefügt:

$config['uri_protocol'] = "PATH_INFO"; 
1

die Fehler zu lösen, um this line zu gehen. Ich persönlich denke, dass dies ein Designfehler ist, weil das Auflisten von Symbolen aus URI viel besser wäre als das Auflisten von weißen Listen.

Wie für GET Variablen .. müssten Sie <form method="get" action="/what/ever/"> verwenden.

7

Ausblick:

<form action="<?=site_url('controller_name/function_name);?>" method="get"> 
    <input type="text" name="temp"> 
    <input type="submit"/> 
</form> 

-Controller

class controller_name extends CI_Controller{ 

    function function_name(){ 
     echo $this->input->get('temp'); 
    } 

} 
1

Kannst du nicht $this->input->get('temp'); verwenden?

+0

warum? Meines Wissens nach muss jedes Formular über "post" und "get" in php gepostet werden. –

+0

Ich muss nicht verstehen, "gut" zu bekommen. Wenn ich in CI arbeite und Daten posten, gehe ich immer mit der CI-Methode '$ this-> input-> post ('temp');'. – Catfish

Verwandte Themen