<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # 輸入過濾 [上一頁](155.html "上一頁")[下一頁](157.html "下一頁") 永遠不要相信客戶端提交的數據,所以對于輸入數據的過濾勢在必行,我們建議:- 開啟令牌驗證避免數據的重復提交; - 使用自動驗證和自動完成機制進行初步過濾; - 使用系統Action類提供的\_get \_post \_cookie等方法獲取數據; - 對用戶輸入的數據進行有效(根據你的應用)的過濾,常見的安全過濾函數包括stripslashes、htmlentities、htmlspecialchars等,官方的擴展類庫中的ORG.Util.Input類則提供了更好的解決方法; ### 系統變量的全局過濾 系統變量的全局過濾功能,采用VAR_FILTERS 定義,默認為空,表示不進行任何過濾。 如果設置了VAR_FILTERS參數,對GET POST系統變量會進行過濾,例如:`'VAR_FILTERS'=>'htmlspecialchars'`也可以支持多個方法過濾,例如:`'VAR_FILTERS'=>'stripslashes,strip_tags'`注意如果系統變量存在多維數組的情況,設置的過濾方法要能夠很好的支持多維數組過濾。### 表單數據合法性檢測 使用create方法創建數據對象的時候,可以使用數據的合法性檢測,有兩種方式: **一、可以配置insertFields 和 updateFields屬性** 可以分別為新增和編輯表單設置insertFields 和 updateFields屬性 使用create方法創建數據對象的時候,不在定義范圍內的屬性將直接丟棄,避免表單提交非法數據。 insertFields 和 updateFields屬性的設置采用字符串(逗號分割多個字段)或者數組的方式。 設置的字段應該是實際的數據表字段,而不受字段映射的影響。例如:`class?UserModel?extends?Model{<br class="calibre5"></br>????protected?$insertFields?=?array('account','password','nickname','email');<br class="calibre5"></br>????protected?$updateFields?=?array('nickname','email');<br class="calibre5"></br>}`定義后,調用add方法寫入用戶數據的時候,只能寫入'account','password','nickname','email' 這幾個字段,編輯的時候只能更新'nickname','email'兩個字段。 在使用的時候,我們調用create方法的時候,會根據提交類型自動識別insertFields和updateFields屬性:`D('User')->create();`**二、直接調用field方法** 如果不想定義insertFields和updateFields屬性,可以在調用create方法之前直接調用field方法,例如,實現和上面的例子同樣的作用: 在新增用戶數據的時候,使用:`M('User')->field('account,password,nickname,email')->create();`而在更新用戶數據的時候,使用:`M('User')->field('nickname,email')->create();`這里的字段也是實際的數據表字段。 field方法也可以使用數組方式。 使用字段合法性檢測后,你不再需要擔心用戶在提交表單的時候注入非法字段數據了。### 寫入數據過濾 可以在數據寫入數據庫之前調用filter方法對數據進行安全過濾,例如:`$this->data($data)->filter('strip_tags')->add();` [上一頁](155.html "上一頁")[下一頁](157.html "下一頁")
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看