Zu den häufig verwendeten Formularübermittlungsvorgängen in ThinkPHP gehören die Post-Methode und die Get-Methode.
Die Post-Methode ist sicherer als die Get-Methode. Wenn Sie die Get-Methode verwenden, wird Ihr übermitteltes Formular, einschließlich Kontopasswort und anderen Informationen, im Zugriffspfad angezeigt, während die Post-Methode seine Daten verbirgt .
Schreiben Sie die Add-Methode neu, um festzustellen, ob es sich um eine Post-Anfrage handelt. Wenn nicht, zeigen Sie die Vorlage an.
Erweiterung: Wie kann festgestellt werden, ob es sich bei der Anfrage um einen Beitrag handelt?
Antwort: Wir können if($_POST) zur Beurteilung verwenden, aber in ThinkPHP kapselt das System mehrere häufig verwendete Konstanten für uns. Sie können Konstanten direkt zur Beurteilung verwenden:
IS_POST Wenn die Anfrage post ist, ist der Wert von IS_POST wahr, andernfalls ist er falsch
IS_GET
IS_AJAX Wenn die Anfrage Ajax ist, ist der Wert von IS_AJAX wahr, andernfalls ist er wahr false
IS_CGI
IS_PUT
…
Anweisungen zum Datenempfang:
Als wir zuvor $_POST zum Empfangen von Daten verwendet haben, In ThinkPHP, wir können die I-Methode (Schnellmethode) verwenden, um Daten zu empfangen. Die I-Methode kann jede Art von Eingabe empfangen (Post, Get, Request, Put usw.), und das System verfügt über eine Methode, um die SQL-Injection zu verhindern default (unter Verwendung der in PHP integrierten Funktion htmlspecialchars).
Der Variablentyp ähnelt get, post usw.
Der Variablenname bezieht sich auf den Index des spezifischen Elements in $_GET oder $_POST.
Standardwert: Wenn der ursprüngliche Inhalt nach Verwendung der Filtermethode zu einer leeren Zeichenfolge wird, wird stattdessen der Standardwert verwendet.
Filtermethode: Es handelt sich um eine Ergänzung zu den von ThinkPHP standardmäßig bereitgestellten htmlspecialchars. Der Funktionsname kann in PHP oder in der Funktionsbibliothek integriert sein.
Zusätzlicher Hinweis: Was ist, wenn Sie das gesamte Array erhalten möchten?
Wenn Sie alle Daten erhalten möchten, müssen Sie den Variablennamen nicht schreiben, Sie können ihn schreiben als I('get.');
<?php public function add(){ if(IS_POST){ //处理表单提交 $post = I('post.'); //添加数据 //实例化模型 $model = M('Dept'); $result = $model -> add($post); //判断返回值 if($result){ //添加成功 $this -> success('添加成功',U('showList'),5); }else{ $this -> error('添加失败'); } }else{ //实例化模型 $model = M('Dept'); //查询操作 $data = $model -> where('pid = 0') -> select(); //变量分配 $this -> assign('data',$data); //展示模板 $this -> display(); } }
Empfohlenes Tutorial: Thinkphp-Tutorial
Das obige ist der detaillierte Inhalt vonHäufig verwendete Methoden zum Senden von Formularen in thinkphp. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!