ThinkPHP表單令牌錯(cuò)誤的相關(guān)解決方法分析
本文分析了ThinkPHP表單令牌錯(cuò)誤的相關(guān)解決方法。分享給大家供大家參考,具體如下:
今天在用ThinkPHP做程序的時(shí)候,以前用create創(chuàng)建數(shù)據(jù)的時(shí)候,出現(xiàn)了錯(cuò)誤提示“表單令牌錯(cuò)誤”,然后各種百度各種谷歌,得到的網(wǎng)上解答給出了以下的建議
1、清緩存: 用了,我把所有的Cache下的文件都刪掉了,并將~app.php和~runtime.php兩個(gè)文件同時(shí)都刪掉了,但是沒有效果。
2、將TOKEN_ON參數(shù)設(shè)置為FALSE: 試過了,但是也不行,雖然不提示表單令牌錯(cuò)誤了,但是添加到數(shù)據(jù)庫的數(shù)據(jù)是空的。
3、在模板文件的表單中添加{__NOTOKEN__}:添加了,但是結(jié)果同樣是無效!
到這里我就開始無語了,難道就我電腦上的ThinkPHP不行?我覺得應(yīng)該不是,我又重新寫了一個(gè)添加函數(shù),結(jié)果正常,這時(shí)候我就開始想,是不是我的上一個(gè)函數(shù)寫錯(cuò)了?但是檢查之后發(fā)現(xiàn)沒錯(cuò)!后來慢慢的一個(gè)個(gè)文件開始那個(gè)查看啊,終于讓我發(fā)現(xiàn)了原因:
在ThinkPHP自動(dòng)生成的各個(gè)文件夾中,有一個(gè)叫做“Data”的文件夾,下面有個(gè)“_fields”文件夾,這個(gè)文件夾中存放的是各個(gè)模型中數(shù)據(jù)表中的相關(guān)信息,也就算是映射(我的理解),我仔細(xì)檢查了一個(gè),發(fā)現(xiàn),有兩個(gè)文件中只有“'_autoinc' => true,”這一項(xiàng),其他的都有很多,類似于:
<?php return array ( 0 => 'id', 1 => 'title', 2 => 'content', 3 => 'publishedtime', 4 => 'userid', 5 => 'params', '_autoinc' => true, '_pk' => 'id', ); ?>
到這個(gè)時(shí)候就可以知道原因了,是某個(gè)操作將這些數(shù)據(jù)給刪掉了一部分,這樣ThinkPHP在進(jìn)行表單驗(yàn)證的時(shí)候,無法進(jìn)行數(shù)據(jù)的映射,也就導(dǎo)致了ThinkPHP的錯(cuò)誤,將他們按照數(shù)據(jù)表中的順序進(jìn)行添加之后,重新運(yùn)行,正常!
到此,這個(gè)問題解決~~~~
(本文所述thinkPHP環(huán)境為早期版本,用戶在使用新版的時(shí)候可參考對(duì)應(yīng)目錄)
PS:這里推薦幾款本站的格式化/美化/轉(zhuǎn)換工具可以幫助你整理雜亂無章的代碼,相信大家在以后的開發(fā)中能夠用得上:
php代碼在線格式化美化工具:
http://tools.jb51.net/code/phpformat
JavaScript代碼美化/壓縮/格式化/加密工具:
http://tools.jb51.net/code/jscompress
在線XML格式化/壓縮工具:
http://tools.jb51.net/code/xmlformat
JSON代碼格式化美化工具:
http://tools.jb51.net/code/json
在線XML/JSON互相轉(zhuǎn)換工具:
http://tools.jb51.net/code/xmljson
json代碼在線格式化/美化/壓縮/編輯/轉(zhuǎn)換工具:
http://tools.jb51.net/code/jsoncodeformat
sql代碼在線格式化美化工具:
http://tools.jb51.net/code/sqlcodeformat
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《ThinkPHP常用方法總結(jié)》、《PHP中cookie用法總結(jié)》、《smarty模板入門基礎(chǔ)教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對(duì)大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。
- 讓whoops幫我們告別ThinkPHP6的異常頁面
- Thinkphp 在api開發(fā)中異常返回依然是html的解決方式
- 解決thinkphp5未定義變量會(huì)拋出異常,頁面錯(cuò)誤,請稍后再試的問題
- 關(guān)于ThinkPHP中的異常處理詳解
- thinkPHP線上自動(dòng)加載異常與修復(fù)方法實(shí)例分析
- ThinkPHP中自定義錯(cuò)誤頁面和提示頁面實(shí)例
- TP5(thinkPHP5框架)實(shí)現(xiàn)顯示錯(cuò)誤信息及行號(hào)功能的方法
- ThinkPHP下表單令牌錯(cuò)誤與解決方法分析
- thinkPHP自動(dòng)驗(yàn)證、自動(dòng)添加及表單錯(cuò)誤問題分析
- ThinkPHP3.2.3框架實(shí)現(xiàn)的空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面圖文詳解
- Thinkphp5框架異常處理操作實(shí)例分析
相關(guān)文章
tp5 實(shí)現(xiàn)列表數(shù)據(jù)根據(jù)狀態(tài)排序
今天小編就為大家分享一篇tp5 實(shí)現(xiàn)列表數(shù)據(jù)根據(jù)狀態(tài)排序,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-10-10php實(shí)例分享之通過遞歸實(shí)現(xiàn)刪除目錄下的所有文件詳解
最近遇到一個(gè)實(shí)際問題,需要清空制定目錄下的所有文件及清空數(shù)據(jù)庫。清空數(shù)據(jù)庫不難,但要如何遞歸刪除一個(gè)目錄下的所有文件呢。 于是去網(wǎng)上研究了下資料再加上自己琢磨解決了這一問題。2014-05-05laravel migrate初學(xué)常見錯(cuò)誤的解決方法
之前給大家介紹了關(guān)于laravel migrate入門的基礎(chǔ),下面這篇文章主要給大家介紹了關(guān)于laravel migrate初學(xué)時(shí)常見錯(cuò)誤的解決方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-10-10php 偽造HTTP_REFERER頁面URL來源的三種方法
這篇文章主要介紹了php 偽造HTTP_REFERER頁面URL來源的三種方法的相關(guān)資料,需要的朋友可以參考下2016-09-09在laravel中實(shí)現(xiàn)將查詢的對(duì)象轉(zhuǎn)換為多維數(shù)組的函數(shù)
今天小編就為大家分享一篇在laravel中實(shí)現(xiàn)將查詢的對(duì)象轉(zhuǎn)換為多維數(shù)組的函數(shù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-10-10Yii2 GridView實(shí)現(xiàn)列表頁直接修改數(shù)據(jù)的方法
這篇文章主要介紹了Yii2 GridView實(shí)現(xiàn)列表頁直接修改數(shù)據(jù)的方法的相關(guān)資料,小編認(rèn)為非常具有參考價(jià)值,特此分享到腳本之家平臺(tái),需要的朋友可以參考下2016-05-05