php做短信验证码,需要将手机号,发送的验证码和时间这几个存到数据库,在添加到数据库的时候,要判断里面有没有要存的手机号,有的话,就更新验证码和时间,没有就是添加,在使用验证码判定的时候,取出验证码和时间,判断验证码是否正确,时间是否在自己设置的有效时间段内,整个过程就是这样.
if($_POST[id]=='$a') $a 不能用单引号括起来,要么用双引号,要不不用,单引号扩住的话,它不会编译,只会把它堪称是字符串 $a 来看待.我说一个问题哦,仅仅是我自己理解的,你在页面传输的时候接受 id ($_POST[id]==)的值,而你又要和$a(用户名$lr[luser]; )比较( _POST[id]=='$a' ),你的用户民 是字符串,而id是数字类型的,怎么能相等...
第一段:sql 语句就有问题了.既然向PHP端传入参数name和password,那么$sql 就得做出更改了.
第二段:函数mysqli_fetch_assoc() 函数从结果集中取得一行作为关联数组.while只针对二维数组来循环操作的,所以$row=mysqli_fetch_assoc($result);即可.
所以整体代码更改如下:
$sql="";
if?(!isset($_POST)?||?empty($_POST))?{
}?else?{
//关联数据库接受信息
$name?=?$_POST['name'];
$password?=?$_POST['password'];
if?(?$result=mysqli_query($con,$sql)?)
{
$row?=?mysqli_fetch_assoc($result);
mysqli_free_result($result);//?释放结果集
if($row){
header("Location:empManage.php");
exit();
}else{
header("Location:login.php?errno=1");
}
echo("错误描述:?"?.?mysqli_error($con));?
}?
mysqli_close($conn);
①?新建code.php验证码生成文件
php
session_start();
//生成验证码图片
Header("Content-type: image/PNG");
imagefill($im,0,0,$back); //背景
srand((double)microtime()*1000000);
$vcodes.=$authnum;
for($i=0;$i100;$i◆◆) //加入干扰象素
imagesetpixel($im, rand()p , rand()0 , $randcolor);
ImagePNG($im);
ImageDestroy($im);
$_SESSION['Checknum'] = $vcodes;
② 显示验证码图片
在需要显示验证码的页面中加入
input type="text" name="passcode"
img src="code.php"
③判断并获取验证码的值
验证码是通过第一步骤代码中的$_SESSION['Checknum'] = $vcodes;赋的值,所以验证码的值存在$_SESSION['Checknum']当中.在验证页面,使用以下代码,
...
session_start();//启动会话
$code=$_POST["passcode"];
if( $code == $_SESSION["Checknum"])
{...}即可完成验证码登录.
运行截图:
望采纳,谢谢
方法:查询数据,若数据存在则输出(前端这个要自己写,我只写了一个echo)
代码如下:
//$conn = new mysqli($sql_server_name, $sql_username, $sql_password, $sql_db);
$timu = $_GET["timu"];
$sql = $conn-query("查询 * from problems where timu
='". $timu . "'"); // 从problems库里查 注意把"查询"改成"select",因为百度知道会屏蔽sql语句
if (mysqli_fetch_assoc($sql) 0) {
echo "已存在";
} else {
echo "不存在";
你记住 所有在 引号里面的 东西都是字符串!!!!!
if("SELECT username,passwd FROM wen WHERE $username=$user,$passwd=$passwd"){
echo "scriptalert('欢迎登录!');window.location.href='index1.php';/script";
这一句代码本身就是不通的.
还有就是 你的sql语句也是错误的.
参考如下:
$sql = 'SELECT username,passwd FROM wen WHERE username="'.$user.'" AND passwd="'.$passwd.'"';
$result = mysql_query($sql,$conn);
手动回复,不谢
以上就是土嘎嘎小编为大家整理的php验证库相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!