源代码:<?php session_start(); if(isset($_POST['aduser']) && isset($_POST['passwd'])) { $user = $_P
我在做一个PHP论坛的网站,在MySQL表格admins里添加了管理账号,可是SQL语句就是搜寻不到数据资源,为什么呢?管理员账号也登不进去!这是源代码:<?phpses...
我在做一个PHP论坛的网站,在MySQL表格admins里添加了管理账号,可是SQL语句就是搜寻不到数据资源,为什么呢? 管理员账号也登不进去!
这是源代码:<?php
session_start();
if(isset($_POST['aduser']) && isset($_POST['passwd']))
{
$user = $_POST['aduser'];
$passwd = $_POST['passwd'];
if(empty($user) && empty($passwod))
{
echo '<p><font color="red">登录用户名或密码错误</font></p>';
exit;
}
mysql_connect("localhost","root","admin");
mysql_select_db("mybbs") or die("Can't select database");
$passwd = md5($passwd);
$sql = "select id from admins where name='$user' and passwd='$passwd'";
$result = mysql_query($sql) or die("ERROR: ".mysql_error()." <br/>SQL=".$sql);
if($num = mysql_num_rows($result))
{
$_SESSION['ad']=$user;
header("location: main.php");
}
else
{
echo '<p><font color="red">登录用户名或密码错误</font></p>';
exit;
}
}
?> 展开
这是源代码:<?php
session_start();
if(isset($_POST['aduser']) && isset($_POST['passwd']))
{
$user = $_POST['aduser'];
$passwd = $_POST['passwd'];
if(empty($user) && empty($passwod))
{
echo '<p><font color="red">登录用户名或密码错误</font></p>';
exit;
}
mysql_connect("localhost","root","admin");
mysql_select_db("mybbs") or die("Can't select database");
$passwd = md5($passwd);
$sql = "select id from admins where name='$user' and passwd='$passwd'";
$result = mysql_query($sql) or die("ERROR: ".mysql_error()." <br/>SQL=".$sql);
if($num = mysql_num_rows($result))
{
$_SESSION['ad']=$user;
header("location: main.php");
}
else
{
echo '<p><font color="red">登录用户名或密码错误</font></p>';
exit;
}
}
?> 展开
4个回答
展开全部
把SQL 语句输出,然后直接到mysql里执行,看看有没有记录出来。
追问
在MySQL里执行错误,但是我echo SQL语句 是可以显示数据的!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你是不是直接在管理员账户的 password上写的密码啊? 明码?
$passwd = md5($passwd);
这里都进行过md5 加密了 正确的密码应该是32位的
啊还有 $sql = "select id from admins where name='$user' and passwd='$passwd'";
谁告诉你 可以 用单引号圈选变量的 单引号 双引号在PHP 里是有意义的 正确连接应该是 '.$user.' 或者 "select .... {$user} ....."
还有 你那 select id from 是要干什么?? 只看ID? 总之 这句sql 完全的低级错误
大概看了一下 其他的问题还没看到
$passwd = md5($passwd);
这里都进行过md5 加密了 正确的密码应该是32位的
啊还有 $sql = "select id from admins where name='$user' and passwd='$passwd'";
谁告诉你 可以 用单引号圈选变量的 单引号 双引号在PHP 里是有意义的 正确连接应该是 '.$user.' 或者 "select .... {$user} ....."
还有 你那 select id from 是要干什么?? 只看ID? 总之 这句sql 完全的低级错误
大概看了一下 其他的问题还没看到
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
请问你在干嘛?
追问
问题没发完整 ,不好意思啊!
追答
1. myql 连接上了没?
2.打印 sql 语句, 到数据库里执行一下, 看sql语句是否正确。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先看一下数据库的配置有没有问题吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询