自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何運(yùn)用PHP GD庫生成驗證碼

開發(fā) 后端
PHP GD庫是PHP進(jìn)行圖像操作時的一個非常重要的庫,我們下面就通過介紹PHP GD庫生成驗證碼的方法來進(jìn)一步加深對它的了解。

當(dāng)我們要使用PHP進(jìn)行圖像操作的時候,必然會使用到一個PHP GD庫,它是一個很強(qiáng)大的庫。今天我們要向大家介紹的就是PHP GD庫如何生成驗證碼的相關(guān)方法。

#t#先在php.ini里增加一行引用:extension=php_gd2.dll

重啟apache。做一個測試頁 var_dump(gd_info());輸出數(shù)據(jù)表明PHP GD庫引用成功。

表單auth.html

  1. <html> 
  2. <head> 
  3. <meta http-equiv='Content-Type' content='text/html; charset=utf-8'> 
  4. <title>驗證碼</title> 
  5. </head> 
  6. <body> 
  7. <h1>請輸入驗證碼</h1> 
  8. <form action="check_auth.php" method="post"> 
  9.    <input name="auth" type="text"> 
  10.    <img src="auth.php" border="0" /> 
  11.    <input type="submit" value="提交"> 
  12. </form> 
  13. </body> 
  14. </html> 

PHP GD庫生成驗證碼 auth.php

  1. <?php 
  2.    session_start();  
  3.    header("Content-type:image/png");  
  4.  
  5.    $img_width=100;  
  6.    $img_height=20;  
  7.  
  8.    srand(microtime()*100000);  
  9.    for($i=0;$i<4;$i++)  
  10.    {  
  11.         $new_number.=dechex(rand(0,15));  
  12.    }  
  13.  
  14.    $_SESSION[check_auth]=$new_number;  
  15.    $new_number=imageCreate($img_width,$img_height);//創(chuàng)建圖象  
  16.    ImageColorAllocate($new_number,255,255,255);  //設(shè)置背景色為白色  
  17.  
  18.    for($i=0;$i<strlen($_SESSION[check_auth]);$i++)  
  19.    {  
  20.        $font=mt_rand(3,5);  
  21.        $x=mt_rand(1,8) + $img_width*$i/4;  
  22.        $y=mt_rand(1,$img_height/4);  
  23.        $color=imageColorAllocate($new_number,mt_rand(0,100),mt_rand(0,150),mt_rand(0,200));//設(shè)置字符顏色  
  24.        imageString($new_number,$font,$x,$y,$_SESSION[check_auth][$i],$color);//輸出字符  
  25.    }  
  26.  
  27.    ImagePng($new_number);  
  28.    ImageDestroy($new_number);  
  29. ?> 

PHP GD庫提交頁面 check_auth.php

  1. <?php 
  2.    session_start();  
  3.    $auth=$_POST['auth'];  
  4.  
  5.    if(empty($auth))  
  6.    {  
  7.        echo '錯誤:驗證碼不能為空';  
  8.        die;  
  9.    }  
  10.  
  11.    if($auth==$_SESSION['check_auth'])  
  12.    {  
  13.        echo '正確';  
  14.    }  
  15.    else  
  16.    {  
  17.        echo '錯誤:驗證碼輸入錯誤';  
  18.    }  
  19. ?> 

以上就是本文所介紹的PHP GD庫生成驗證碼的相關(guān)知識,希望對大家有所幫助。

責(zé)任編輯:曹凱 來源: 博客園
相關(guān)推薦

2015-09-21 15:31:05

php實現(xiàn)驗證碼

2012-05-24 15:41:38

PHP

2009-12-11 15:17:52

PHP驗證碼調(diào)用

2009-11-26 10:48:59

PHP驗證碼

2009-11-23 16:59:23

PHP圖形驗證碼

2024-01-29 08:32:10

Python驗證碼識別

2024-03-08 12:04:22

PythonPillow驗證碼

2013-06-19 10:19:59

2020-12-29 05:33:03

Serverless驗證碼架構(gòu)

2020-11-16 07:28:53

驗證碼

2009-08-11 14:05:28

JSP驗證碼

2009-02-09 14:17:36

2010-01-11 14:16:14

VB.NET生成驗證碼

2010-01-08 13:46:30

VB.NET中文驗證碼

2021-01-19 10:29:34

短信驗證碼密碼

2017-12-21 07:38:19

2015-03-23 17:58:04

驗證碼倒計時并行

2022-02-11 07:10:15

驗證碼

2015-03-17 09:28:04

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號