![]() |
|
首页 │ Apache │ Linux│ Java│ MySQL│ 注册│帮助 | |||
环境:Apache 1.3.33 + MySQL 4.0.21 + PHP 4.3.10
想做一个这样的登陆验证网页,请问下面代码哪里不对?怎么修改?
错误1:任何验证码都无法通过验证。
错误2:好像没有验证 数据库中的用户名、密码。
authnum.php 全部代码
[php]<?php
Header("Content-type:image/png");
session_start();
$authnum_session = '';
$str = 'abcdefghijkmnpqrstuvwxyz1234567890';
$l = strlen($str);
for($i=1;$i<=4;$i++)
{
$num=rand(0,$l-1);
$authnum_session.= $str[$num];
}
$_SESSION['authnum_session'] = $authnum_session;
srand((double)microtime()*1000000);
$im = imagecreate(50,20);
$black = ImageColorAllocate($im, 0,0,0);
$white = ImageColorAllocate($im, 255,255,255);
$gray = ImageColorAllocate($im, 200,200,200);
imagefill($im,68,30,$gray);
$li = ImageColorAllocate($im, 220,220,220);
for($i=0;$i<3;$i++)
{
imageline($im,rand(0,30),rand(0,21),rand(20,40),rand(0,21),$li);
}
imagestring($im, 5, 8, 2, $authnum_session, $white);
for($i=0;$i<90;$i++)
{
imagesetpixel($im, rand()%70 , rand()%30 , $gray);
}
ImagePNG($im);
ImageDestroy($im);
?>[/php]
login.php 全部代码
[php]<?php
/*
--------------------------------------------------------
CREATE TABLE user (
id smallint(6) NOT NULL auto_increment,
user varchar(12) NOT NULL,
passwd varchar(32) NOT NULL,
UNIQUE id (id)
);
insert into user(id,user,passwd) values('1','abcd','myabcd');
insert into user(id,user,passwd) values('2','test','mytest');
--------------------------------------------------------
*/
session_start();
if ($_POST['user']=="" && $_POST['pass']=="" && !isset($HTTP_POST_VARS['authinput']))
{
?>
next page
"; } } ?>[/php]

