ホームページ >バックエンド開発 >PHPチュートリアル >TP は自動的に満たされますが、Create オブジェクト以外では機能しませんか?

TP は自動的に満たされますが、Create オブジェクト以外では機能しませんか?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-13 13:00:25927ブラウズ

TP 自動検証は、Create ユーザー以外には機能しませんか?

    public function register(){<br />
          if($this->isPost()) {<br />
                $Mem=D('Member');<br />
                if( $Mem->Create()) {<br />
                    if($Mem->add())<br />
                       echo $Mem->getLastSql();<br />
                        $this->assign('waitSecond',3);<br />
                        $this->success("注册成功","__APP__/Member/login"); }

上記のコードが確認できます。


    public function xinxixiugai(){<br />
        if($this->isPost())<br />
        {<br />
            $Model=D('Member');<br />
            $password=$_POST['password'];<br />
            $tel=$_POST['tel'];<br />
            $address=$_POST['address'];<br />
<br />
            if($Model->Update($password,$tel,$address))<br />
            {    $this->success("更新成功",__APP__/Space/index);}<br />
            else<br />
                echo $Model->getError();<br />
        }

これは検証できません。 。 。
さらに、マニュアルには、 を変更し、create も使用する場合、ID の隠しフィールドをフォームに追加する必要があると書かれています。
具体的な方法は、ページにPHPコードを追加し、session('id')して、それを隠しフィールドに追加することでしょうか?
------解決策------------------
自動検証は作成にのみ適用されるようです
------解決策----------------------
ドキュメントで説明されていますが、作成する必要はありません。手動で呼び出すことができます。
手動検証

新しいバージョンでは、必要に応じてデータを手動で検証するために使用されるチェック メソッドが追加され、その使用法は次のとおりです。
check('検証データ','検証ルール','検証タイプ')

検証タイプは、等しい長さの正規表現、expired ip_allow ip_deny をサポートし、デフォルトは正規表現で、結果はブール値を返します。 $model->check($value,'email'); 1,2,3 ','in');


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。