【发布时间】:2010-04-09 14:11:48
【问题描述】:
首先,感谢 StackOverflow 为我提供的所有帮助。我学到了很多东西。
再一次,我提出了一个我已经搜索过但找不到确切答案的基本问题。在这里或 PHP.net 上。
有点像这个人问的,但不完全是:Mysql throwing query error yet finishing query just fine-why?
所以,当我检查我的站点目录并打开并注意到自从我编写这个新的管理区域以来已经记录了一堆错误时,我看到我的错误日志在膨胀。我知道我的脚本显然有问题会引发错误,但奇怪的是,脚本实际上运行并提取了我需要的所有数据而不会中断。
日志包含:
PHP 警告:mysql_query() [function.mysql-query]:第 15 行 /home/mysite/adminconsole.php 中用户 'someuser'@'localhost'(使用密码:NO)的访问被拒绝
我不明白,因为那条线就是我设置连接的地方...与我在网站上的其他任何地方做的完全一样,没有问题。
在那个错误之后,我同时抛出了这些
[09-Apr-2010 08:44:18] PHP 警告:mysql_query() [function.mysql-query]:无法在第 15 行的 /home/mysite/adminconsole.php 中建立到服务器的链接
[09-Apr-2010 08:44:18] PHP 警告:mysql_fetch_array():提供的参数不是第 16 行 /home/mysite/adminconsole.php 中的有效 MySQL 结果资源
从我在其他人的帖子中读到的内容,问题可能是查询的内容?也许我的查询格式不正确?
非常感谢您提供的任何指导。
-罗伯
添加:致多米尼克
多米尼克
session_start();
if (isset($adminusr))
{
mysql_connect("localhost","user","pw") or die(mysql_error());
mysql_select_db("my_db") or die(mysql_error());
}
else {
header("location:admin.php");
}
LINE 14 #SETUP THE QUERIES HERE FROM SESSION INFO
LINE 15 $sql1=mysql_query("SELECT * FROM admins WHERE username='$adminusr'"); ///connecting to the admin DB
LINE 16 $result1=mysql_fetch_array($sql1);
### OLD BAR INFO QUERY
$sql2=mysql_query("SELECT * FROM bars WHERE bar_id='$result1[bar_id]'"); ///connecting to the old bars DB
$result2=mysql_fetch_array($sql2);
###LIQUOR QUERIES
$sql3=mysql_query("SELECT * FROM inv_beer WHERE bar_id='$result1[bar_id]'"); ///connecting to the BEER INVENTORY DB
$beer_results=mysql_fetch_array($sql3);
【问题讨论】:
-
adminconsole.php的第 15 和 16 行是什么?发布代码(显然用虚拟值替换密码)。 -
这个 MySQL 账户有密码吗?我注意到你引用的错误说没有密码被传递给
mysql_connect。 -
嗨 OMG 独角兽。是的,有一个 PW,我提供它。我根本没有收到这个错误!酷用户名顺便说一句;)