完美解決php驗證碼session不同步的問題

2021-06-11 23:11:40 字數 935 閱讀 7892

關注我的**:

各位搞開發的人都經歷過被怪現象折磨的滋味

,怎麼說呢?想找原因找不出來,想解決又解決不了,接下來我們就來說說php驗證碼這個怪僻。。

先給大家上個圖,相信你們也似曾相識。。

你會發現兩個值竟然不一樣,不一樣咋驗證?????

於是乎,我就在網上找到了原因:頁面載入login.php頁面時,的載入跟其他標籤載入是非同步的,所以其他標籤資訊先載入,而後才會去載入src(),不同步導致「驗證碼」也不同步。

知道了原因,作為菜鳥的我看了別人寫的解決方案後仍然無從下手。。

終於,在乙個偶然的機會,我從乙個專案中找到答案。。

其實,解決方法很簡單,根本不用理會顯示的值相同不相同,舉個例子。。

login.php 登入頁面

login_check.php 驗證頁面

<?php  

session_start();//開啟session

$checkcode= strtolower($_post["checkcode"]);//獲取驗證碼文字框的值

echo $checkcode;//輸出驗證碼文字框的值

echo $_session['verifycode']//輸出yan.php輸出的值

?>

提交後,你會驚奇的發現,如果我在login.php輸入與生成驗證碼的值一樣的話,那麼在login_check.php輸出的兩個值是除了大小寫不一樣,字母是一樣的。

當然大小寫的問題,我們都能解決。

講到這裡,我相信,不同步的問題就算解決了

當然,我知道有些最求完美的人喜歡用ajax,根據個人所好,屏閃來閃去,看起來也不太爽,不過,用ajax的話,不要提交到本頁面,不然驗證不了,通過乙個外部檔案進行非同步驗證是沒有問題的。

php驗證碼zhuc php實現驗證碼製作

php實現驗證碼製作 首先,看一張圖了解驗證碼生成的過程。1 生成驗證碼底圖 2 驗證碼內容 3 生成驗證碼 4 對比校驗 驗證碼實現的核心技術分析 a 底圖的 實現,並新增干擾元素 b 生成驗證內容 c 驗證內容儲存在服務端 d 驗證內容的校驗 下面看 實現的過程 這段 實現了產生 隨機數字,隨機...

PHP實現驗證碼

目前,不少 為了防止使用者利用機械人自動註冊 登入 灌水,都採用了驗證碼技術。所謂驗證碼,就是將一串隨機產生的數字或符號,生成一幅,裡加上一些干擾象素 防止 ocr 由使用者肉眼識別其中的驗證碼資訊,輸入表單提交 驗證,驗證成功後才能使用某項功能。我們這裡展示了如何編寫 php程式實現驗證碼功能 一...

php生成驗證碼

header content type image gif 初始化 border 0 是否要邊框 1要 0不要 how 4 驗證碼位數 w how 15 寬度 h 20 高度 fontsize 5 字型大小 alpha abcdefghijkmnopqrstuvwxyz 驗證碼內容1 字母 numb...