一个注册的php网站怎么加一段验证码呢?
求大神指教
最简单的四个数字那种就行
在线等啊!!!
回复讨论(解决方案)
//---------验证码生成函数-------// public function verify_image() { //生成验证码图片 header("Content-type: image/png"); // 全数字 $str = "2,3,4,5,6,7,8,9,a,b,c,d,f,g,h,i,j,k,m,n,p,q,r,s,t,u,v,w,x,y,z"; //要显示的字符,可自己进行增删 $list = explode(",", $str); $cmax = count($list) - 1; $verifyCode = ''; for ( $i=0; $i < 5; $i++ ){ $randnum = mt_rand(0, $cmax); $verifyCode .= $list[$randnum]; //取出字符,组合成为我们要的验证码字符 } //$_SESSION['code'] = $verifyCode; //将字符放入SESSION中 //$this->session->set_userdata('code', $verifyCode); $im = imagecreate(58,28); //生成图片 $black = imagecolorallocate($im, 0,0,0); //此条及以下三条为设置的颜色 $white = imagecolorallocate($im, 255,255,255); $gray = imagecolorallocate($im, 200,200,200); $red = imagecolorallocate($im, 255, 0, 0); imagefill($im,0,0,$white); //给图片填充颜色 //将验证码绘入图片 imagestring($im, 5, 10, 8, $verifyCode, $black); //将验证码写入到图片中 for($i=0;$i<50;$i++){ imagesetpixel($im, rand(0,58) , rand(0,28) , $black); //加入点状干扰素 imagesetpixel($im,rand(0,58),rand(0,28),$red); imagesetpixel($im, rand(0,58) , rand(0,28) , $gray); //imagearc($im, rand(0,58), rand(0,28), 20, 20, 75, 170, $black); //加入弧线状干扰素 //imageline($im, rand(0,58), rand(0,28), rand(0,58), rand(0,28), $red); //加入线条状干扰素 } imagepng($im); imagedestroy($im); }
请问这个是另外单开一个文件还是直接加在原来的上面呢
---------------------------------------------------------------------------
session_start();
include("Config/Config.php");
include("ip.php");
if(!$isREG) die("帐号注册功能已关闭,请等待开放再注册!");
if($_POST){
//提交
include_once("Config/function_common.php");
$illegal=illegalsubmit();
if(!$illegal) die("禁止非法提交");
$POST=Addslashess($_POST);
include_once("Config/mysql_new_class.php");
$con=new mysql_class($SQLhost,$SQLuser,$SQLPWD,$DATABASE);
//账号是否存在
$sql="select username,password from oluc_user where username='$POST[username]'";
$usr=$con->queryrow($sql);
$i = $POST['ip'];
$pass1 = rawurlencode(base64_encode($POST['password']));
$pass2 = rawurlencode(base64_encode($POST['repassword']));
if($pass1!=$pass2){
die("<script>alert('两次输入的密码不相同,请重新输入');history.back();</script>");
}else{
if(!$usr)
{
$sql="insert into oluc_user(UserName,PassWord,CreateTime,CreateIp) values('$POST[username]','$POST[password]',now(),'$i')";
mysql_query($sql);
$username=rawurlencode(base64_encode($POST[username]));
$password=rawurlencode(base64_encode($POST[password]));
//$url ='login.php';
//header("Location: $url");
//exit;
die("<script>alert('账号注册成功点确定后为你转入登陆页面 ');location.href='login.php';</script>");
}else{ die("<script>alert('靓号已被占用,请重新输入');history.back();</script>");}
}
mysql_close();
}
?>
nbsp;html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
" />
" />
<script> <br />function $(obj) <br />{ <br /> if(typeof obj == 'string') return document.getElementById(obj); <br /> else if(typeof obj == 'object') return obj; <br /> else return false; <br />} <br />function frmCheck() <br />{ <br /> var un=$("username").value; <br /> var re=/^[0-9a-zA-Z]{4,18}$/; //只输入数字和字母的正则 <br /> if(un.search(re)==-1) <br /> { <br /> alert("账号请输入数字和字母,字符介于4-18个"); <br /> $("username").focus(); <br /> return false; <br /> } <br /> var u=$("password").value; <br /> if(u.length<6 || u.length>18) <br /> { <br /> alert("密码必须在6-18位之间"); <br /> $("password").focus(); <br /> return false; <br /> } <br /> if(u.indexOf(" ")>=0) <br /> { <br /> alert("密码不能包含空字符"); <br /> $("password").focus(); <br /> return false; <br /> } <br /> //var pwd=$("password").value; <br /> //var rwd=$("repassword").value; <br /> //if(pwd!=rwd) <br /> //{ <br /> // alert("两次输入的密码不相同"); <br /> // $("password").focus(); <br /> // $("repassword").focus(); <br /> // return false; <br /> //} <br />} <br /></script>
<script> <br />var _bdhmProtocol = (("https:" == document.location.protocol) ? " https://" : " http://"); <br />document.write(unescape("%3Cscript src='" + _bdhmProtocol + "hm.baidu.com/h.js%3F57fd8788c6d101e842a4d9025bf09f11' type='text/javascript'%3E%3C/script%3E")); <br /></script>
----------------------------------------------------------
我的是这样的 求教!!!
验证码:
function create_code(){
document.getElementById('code2').src = 'verify_image';
}
大神能否直接加到我发的那里面
完全不懂这些东西
麻烦了
感谢感谢万分感谢!!!
你的验证码在哪就放哪啊
完全没搞懂 呵呵
$code = mt_rand(1000,9999);$_SESSION['code' ] = $code;
echo $_SESSSION['code'];
看下 gd2 自己画个吧。
其实可以自己去极验验证的后台下载一个他们的SDK,直接安装好就可以使用啦,很方便的还可以查看后台数据。关键是安全性很高哦,还不用自己编程,滑动一下就搞定了。http://www.geetest.com/

PHP和Python各有優勢,選擇應基於項目需求。 1.PHP適合web開發,語法簡單,執行效率高。 2.Python適用於數據科學和機器學習,語法簡潔,庫豐富。

PHP不是在消亡,而是在不斷適應和進化。 1)PHP從1994年起經歷多次版本迭代,適應新技術趨勢。 2)目前廣泛應用於電子商務、內容管理系統等領域。 3)PHP8引入JIT編譯器等功能,提升性能和現代化。 4)使用OPcache和遵循PSR-12標準可優化性能和代碼質量。

PHP的未來將通過適應新技術趨勢和引入創新特性來實現:1)適應云計算、容器化和微服務架構,支持Docker和Kubernetes;2)引入JIT編譯器和枚舉類型,提升性能和數據處理效率;3)持續優化性能和推廣最佳實踐。

在PHP中,trait適用於需要方法復用但不適合使用繼承的情況。 1)trait允許在類中復用方法,避免多重繼承複雜性。 2)使用trait時需注意方法衝突,可通過insteadof和as關鍵字解決。 3)應避免過度使用trait,保持其單一職責,以優化性能和提高代碼可維護性。

依賴注入容器(DIC)是一種管理和提供對象依賴關係的工具,用於PHP項目中。 DIC的主要好處包括:1.解耦,使組件獨立,代碼易維護和測試;2.靈活性,易替換或修改依賴關係;3.可測試性,方便注入mock對象進行單元測試。

SplFixedArray在PHP中是一種固定大小的數組,適用於需要高性能和低內存使用量的場景。 1)它在創建時需指定大小,避免動態調整帶來的開銷。 2)基於C語言數組,直接操作內存,訪問速度快。 3)適合大規模數據處理和內存敏感環境,但需謹慎使用,因其大小固定。

PHP通過$\_FILES變量處理文件上傳,確保安全性的方法包括:1.檢查上傳錯誤,2.驗證文件類型和大小,3.防止文件覆蓋,4.移動文件到永久存儲位置。

JavaScript中處理空值可以使用NullCoalescingOperator(??)和NullCoalescingAssignmentOperator(??=)。 1.??返回第一個非null或非undefined的操作數。 2.??=將變量賦值為右操作數的值,但前提是該變量為null或undefined。這些操作符簡化了代碼邏輯,提高了可讀性和性能。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

Dreamweaver Mac版
視覺化網頁開發工具

記事本++7.3.1
好用且免費的程式碼編輯器