请教一个关于网站登陆的问题,100分求救啊!

luxuezhu 2003-05-13 04:02:20
下面是我的一个登陆程序,请各位高手帮忙指出问题!
在登陆时,IE报错,WHERE user='''
<?
include "common.inc.php";
function User_Password($xh)
{
global $xt_user_TABLE;
$SQL="SELECT password FROM $xt_user_TABLE WHERE xh='$xh'";
$result=mysql_query($SQL) or die(mysql_error());
$row=mysql_fetch_Array($result);
return($row[password]);
}
function CheckNicker($name)
{
global $USER_LOG_TABLE;
global $user,$xh;
$SQL="SELECT * FROM $xt_user_TABLE WHERE user='$user'";
$result=mysql_query($SQL) or die(mysql_error());
$row=mysql_fetch_Array($result);
$xh=$row[xh];
$user=$row[user];
if (!$row[user]) return "error!";
}
if ($Ok) {
if (!$user) $error="用户名不能为空";
if(CheckNicker($name)) $error="用户名不存在";
if (!$password) $error="请输入你的密码";
if (!isset($error))
{
$p=User_Password($xh);
if ($password!=$p) $error="密码不正确";
}
if (!isset($error))
{
header("Location: on_ok.php?log_id=$log_id\n");
}
else
header("Location: login_error.php?error=$error\n");
}

?>
...全文
45 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
lsaturn 2003-05-17
  • 打赏
  • 举报
回复
其实应该是很简单的,我想你是不是在名称上面出了错误啊
luxuezhu 2003-05-16
  • 打赏
  • 举报
回复
谢谢各位,我改用函数了!
这个不用管了!
各位都有分拿!
allkill 2003-05-15
  • 打赏
  • 举报
回复
像这类的用法
return($row[password]); 最好用return($row['password']);

1.注意变量的大小写
2.注意检查在函数里面的全局变量.可以在函数里头输出全局变量的值检查
3.if (!$user) $error="用户名不能为空"; 最好用if (empty($user))

检查$xt_user_TABLE变量是否赋值!


$SQL="SELECT password FROM $xt_user_TABLE WHERE xh='$xh'";
下面加
echo $SQL;
语句
把输出的SQL语句放到phpMyAdmin里试试看看是不是SQL语句有错误.如果有一层一层往上推.看看到底是哪里出错.
这样如果还查不出来我也没有办法了!
fzel_net 2003-05-15
  • 打赏
  • 举报
回复
$SQL="SELECT password FROM $xt_user_TABLE WHERE xh='".$xh."'";
allkill 2003-05-15
  • 打赏
  • 举报
回复
$SQL="SELECT password FROM $xt_user_TABLE WHERE xh='$xh'";
这种用法可以但是不建议这么用!
liuhb001 2003-05-15
  • 打赏
  • 举报
回复
allkill的自底向上的检查方法很好,我也一直用的,受益匪浅啊!
要从一开始就养成正规的方法!
ahchao 2003-05-14
  • 打赏
  • 举报
回复
一个登录页面不用函数吧?
你打算每页都用数据库检查用户是否合法?
summer419 2003-05-14
  • 打赏
  • 举报
回复
自己调试一下就搞定的,,这种东西的一般调试方法就是用echo 把变量打印出来,
一般出现的错误就是变量为空,或者数据库连接语句里面的值同数据库内值类型不一致
luxuezhu 2003-05-14
  • 打赏
  • 举报
回复
我不想因为你的话就结帖
别的人也帮我了
他们也有功劳

我改了一下,是HEADER的问题
还有我表里的密码页面不认,怎么办
qczhxq119 2003-05-14
  • 打赏
  • 举报
回复
其实你的思路太复杂了,请看一个网友要偶帮他写的一个登陆页面演示:
http://www.yygs.com/benifit/admindemo.htm
偶是按照cdsn登陆页面做的,还要一点点的技术,
因为如果直接用按纽简单多了。想要的话给偶100分。
直到现在偶的分数才是2000,郁闷极了,
现在抢分的时候到了,
别怪我贪心哦。
luxuezhu 2003-05-14
  • 打赏
  • 举报
回复
可是我把$xt_user_TABLE改过来后确是这个问题?

Warning: Cannot add header information - headers already sent by (output started at C:\bbxt\index1.php:2) in C:\bbxt\index1.php on line 59

怎么改啊?!
luxuezhu 2003-05-14
  • 打赏
  • 举报
回复
$xt_user_TABLE怎么来的?应该是空的吧?

我有这个表啊
我用SQL增加用户都可以的啊

function CheckNicker($name)
{
global $USER_LOG_TABLE;
global $user,$xh;

对不起,应该是
$xt_user_TABLE

$xh的问题
我想是这个,看帮我怎么改一下??!

hbzhengyi 2003-05-14
  • 打赏
  • 举报
回复
$xh的问题吧,没传过来,建议把SQL语句打印出来调试
onewaytosky 2003-05-14
  • 打赏
  • 举报
回复
function CheckNicker($name)
{
global $USER_LOG_TABLE;
global $user,$xh;
$SQL="SELECT * FROM $xt_user_TABLE WHERE user='$user'";

$xt_user_TABLE怎么来的?应该是空的吧?
luxuezhu 2003-05-14
  • 打赏
  • 举报
回复
这是FORM的代码:
<form name="denlu" method="post" ACTION="<? echo $PHP_SELF; ?>">
<font color="#CC6666" size="3">用户</font> <font size="2">
<input type="text" name="user" maxlength="12" size="12">
<font color="#CC6666"><font size="3">密码</font></font>
<input type="password" name="password" maxlength="10" size="12">
<input type="submit" name="Ok" value="登陆">
</font>
</form>
luxuezhu 2003-05-14
  • 打赏
  • 举报
回复
isaturn 的方案不行啊!!
请各位再帮忙想一下!

错误信息是:You have an error in your SQL syntax near 'WHERE user=''' at line 1

如果在用户栏输入什么,错误就是You have an error in your SQL syntax near 'WHERE user='输入的东西' at line 1

如果各位需要,我可以把所有的HTML贴出来,

另外:哪位高手如果时间充裕的话,我希望能出 RMB 长期赐教!
QQ:12122291
bryanguo 2003-05-14
  • 打赏
  • 举报
回复
把这个sql语句echo出来直接在数据库试一下,那样问题就明显了.
clm0010 2003-05-13
  • 打赏
  • 举报
回复
是不是你的代码格式错误!?
iamwho 2003-05-13
  • 打赏
  • 举报
回复
lsaturn(土星) 的办法比较保险
lsaturn 2003-05-13
  • 打赏
  • 举报
回复
$SQL="SELECT * FROM $xt_user_TABLE WHERE user='".$user."'";
加载更多回复(1)

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧