2010年9月3日

Captcha圖形驗證 - 手工寫code篇(補遺篇)

之前 YOGO 有寫過一篇「Captcha圖形驗證 - 手工寫code篇」,前些日子就有網友在意見中寫到:

「YOGO大你好,我有使用您的這個驗證碼程式,受益良多。但是我遇到一個問題,那就是把這個驗證碼放在A網頁後,如果出現的驗證碼太模糊根本無法辦別需要換一個新的驗證碼,雖然可以在網頁A案重新整理,但是在A的表單內容就會不見了,有辦法只給驗證碼重新整理嗎???謝謝。 」

所以這篇就是針對上述問題所作的補遺說明,其說明如下;首先從「Captcha圖形驗證 - 手工寫code篇」下載檔案後,用你慣用的編輯器開啟一個新的空白檔案,並輸入下面的程式碼:

   1: // JavaScript Document



   2: //更換驗證碼圖片



   3: function RefreshImage(valImageId) {



   4:     var objImage = document.images[valImageId];



   5:     if (objImage == undefined) {



   6:         return;



   7:     }



   8:     var now = new Date();



   9:     objImage.src = objImage.src.split('?')[0] + '?s=' + new Date().getTime();



  10: }


然後將檔案存檔成「reload.js」


02 再來開啟 index.php,然後在驗證碼欄位的後方輸入「重新取得驗證碼」

01若你跟 YOGO 一樣是用 DW 編輯的話,把畫面切換到「程式碼界面」,然後把原本表單的地方修改如下。




   1: <script type="text/javascript" src="reload.js"></script>



   2:  



   3: <form action="&lt;?php echo $_SERVER['PHP_SELF']; ?>" method="post">



   4: 驗證碼測試:<br />



   5: <img src="captcha.php" id="imgCaptcha" /><br />



   6: <input name="check" type="text"> 



   7: <a href="javascript:void(0)" onclick="RefreshImage('imgCaptcha')">重新取得驗證碼</a><br />



   8: <input name="Submit" type="submit">



   9: </form>




下圖中用紅線框起來的地方就是修改的部份。


03





開啟你慣用的瀏覽器(在此以IE8為例),在網址列中輸入http://localhost/,一切無誤的話可看到如下圖的畫面,然後按一下「重新取得驗證碼」


04 若能看到新的驗證碼則表示一切都能正常執行囉。

05



檔案下載:

http://cid-62fad80d6087bdb2.office.live.com/self.aspx/.Public/new^_captcha^_YOGO.rar








延伸閱讀:

Captcha圖形驗證 - 手工寫code篇


Captcha圖型驗證 - Dreamweaver外掛篇(PHP篇)


Captcha圖型驗證 - Dreamweaver外掛篇(ASP篇)


Captcha 圖形驗證 - Free API 篇(1

Captcha 圖形驗證 - Free API 篇(2)



如果覺得這篇文章對您有所幫助,在觀看完文章之餘,希望能點選下方方廣告,當作是對YOGO的支持,讓YOGO更有寫作的動力。


4 則留言:

小龍 提到...

您好,我嘗試在PHP 5.3.13 下直接運行發現會顯示麵包圖@@

優購雲端科技 提到...

檢查一下你是否有寫入圖片的權限及gd模組是否有開啟

Unknown 提到...

版主你好
我上傳至免空(000webhost)後驗證碼沒有出現
書本說會有空間不支援語法

請問要找什麼免空才會顯示該語法或者有其他方式

**試另一家免空後有出現圖片但Mysql有其他問題
該圖權限(666)與gd有開啟

YOGO 提到...

因為你的敘述不是很清楚,所以無法判斷是什麼問題,而且圖形驗證應該跟mysql無關才對

聖誕跑趴歡樂降★韓版假兩件針織連衣裙$890,新款顯瘦棒球服連帽風衣外套下殺$510,冬新款歐美棉襖棉服連帽短款外套限量↘$530,秋冬新款韓版大碼毛領氣質毛料外套↘$680,快上左耳貓網路購物

您好!如圖太小看不清楚,請 點選此處 看詳細內容 左耳貓蝦皮賣場 https://shopee.tw/hrf5168 左耳貓 露天賣場 http://class.ruten.com.tw/user/index00.php?s=starbox 左耳貓粉...