请大家帮忙。

MasterYang 2003-10-14 10:02:09
我的PHP程序出现了如下的问题:
“Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in d:\www0\phpn\enew\admin.php on line 86”
我对PHP不懂,但是老板又要得急,硬是把我拉来搞这个。这是什么意思??
我该怎样消除??
...全文
63 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
legendxia 2003-10-14
  • 打赏
  • 举报
回复
$str="select * from ".$table." where username='".$name."' order by post_time";
legendxia 2003-10-14
  • 打赏
  • 举报
回复
这句:@$res=mysql_db_query($database,$str,$connect);
把前面的@去掉,看看报的是什么错
indeed 2003-10-14
  • 打赏
  • 举报
回复
我认为是你的sql语句不正确,请检查sql语句写的是否正确,表名,字段名是否正确,等等。
jxyuhua 2003-10-14
  • 打赏
  • 举报
回复
$str="select * from $table where username='".$name."' order by post_time
这一句有疑问,我刚才试了一下,将其中的数据库替换成我自己的,也是这里出错,然后我修改成这样就可以了:
$str="select * from $table where lastposter='".$name."' order by forumid desc";
(其中的数据结构是以我的数据库为参考),
因此请检查你的数据库的结构是否与这条语句所写的符合,或贴出来大家参考一下。
MasterYang 2003-10-14
  • 打赏
  • 举报
回复
其中第86行是:
@$res=mysql_db_query($database,$str,$connect);
$total=mysql_num_rows($res);(第86行)
$step=$total>$MAXROWS?$MAXROWS:$total;
$pages=ceil($total/$MAXROWS);
MasterYang 2003-10-14
  • 打赏
  • 举报
回复
这是admin.php的源代码:

<?
include "share.inc.php";
if(($name!=$adminname)||($pass!=$adminpass))
{
$strsql="select * from user where username='".$name."' and password='".$pass."'";
$result=mysql_query($strsql,$connect);
if(!($arr=mysql_fetch_array($result)))
{
header("location:login.php");
exit();
}

}
echo "<table width=\"81%\" align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"1\" bgcolor=\"#99CCCC\">";
echo "<tr><td bgcolor=\"ffffff\">";
include "head.inc.php";
echo "</td></tr><tr><td bgcolor=\"#ffffff\">";
?>
<table width="100%">
<tr>
<td>●<a href="news.php" title="到新闻系统前台">在线新闻系统</a>>>>新闻列表(新闻管理)</td>
<td align="right">●
<?
print "<a href=\"addnews.php?name=$name&pass=$pass\">添加新闻</a>";
if (@$name==$adminname)
{
echo "<td align=\"right\">●<a href=\"adduser.php?user=$name&pass=$pass\" >添加用户</a></td>";
echo "<td align=\"right\">●<a href=\"deluser.php?user=$name&pass=$pass\" >删除用户</a></td>";
}
?></td>
</tr>
</table>
<?php echo "</td></tr><tr><td bgcolor=\"#FFFFFF\">"; ?>
<table width="100%" cellspacing="1">
<tr bgcolor="#99CCFF">
<td width="10%" align="center">张贴日期</td>
<td width="66%" align="center">新闻主题</td>
<td width="6%" align="center">图片</td>
<td width="6%" align="center">编辑</td>
<td width="6%" align="center">删除</td>
<td width="6%" align="center">审核</td>
</tr>
<?
$MAXROWS=10;
$str="select * from $table where username='".$name."' order by post_time desc";
if(isset($from)){
$step=$total-$from;
$step=$step>$MAXROWS?$MAXROWS:$step;
$str="$str limit $from,$step";
$res=mysql_db_query($database,$str,$connect);
for($i=0;$i<$step;$i++){
$row=mysql_fetch_row($res);
print "<tr bgcolor=\"#F5F5FE\">";
print "<td width=\"10%\" align=\"center\">".$row[5]."</td>";
print "<td width=\"66%\" align=\"center\"><a href=\"news_view.php?news_id=$row[0]\">".$row[1]."</a></td>";
if($row[6])
print "<td width=\"6%\" align=\"center\">有</td>";
else print "<td width=\"6%\" align=\"center\">无</td>";
print "<td width=\"6%\" align=\"center\"><a href=\"editnews.php?news_id=$row[0]&name=$name&pass=$pass\"><img src=\"modify.gif\" border=0 alt=修改此新闻></a></td>";
print "<td width=\"6%\" align=\"center\"><a href=\"delnews.php?news_id=$row[0]&name=$name&pass=$pass\"><img src=\"trash.gif\" border=0 alt=删除此新闻></a></td>";
if(!$row[8])
print "<td width=\"6%\" align=\"center\"><a href=\"checknews.php?news_id=$row[0]&name=$name&pass=$pass\">通过</a></td>";
else
print "<td width=\"6%\" align=\"center\">OK</td>";
print "</tr>";
}
print "</table>";
echo "</td></tr></table>";
print"<br><div align=\"center\"><a href=\"$PHP_SELF?from=0&total=$total&pages=$pages&name=$name&pass=$pass\">";
print"首页</a>  ";
if ($pages>2&&$from>=$MAXROWS){
print"<a href=\"$PHP_SELF?from=";
print ($from-$MAXROWS)."&total=$total&pages=$pages&name=$name&pass=$pass\">";
print"上一页</a>  ";
}
if($from+$MAXROWS<$total){
print"<a href=\"$PHP_SELF?from=";
print ($from+$MAXROWS)."&total=$total&pages=$pages&name=$name&pass=$pass\">";
print"下一页</a>  ";
}
print"<a href=\"$PHP_SELF?from=";
print($pages*$MAXROWS-$MAXROWS)."&total=$total&pages=$pages&name=$name&pass=$pass\">末页</a></div>";
}
else{
@$res=mysql_db_query($database,$str,$connect);
$total=mysql_num_rows($res);
$step=$total>$MAXROWS?$MAXROWS:$total;
$pages=ceil($total/$MAXROWS);
for ($i=0;$i<$step;$i++){
$row=mysql_fetch_row($res);
print "<tr bgcolor=\"#F5F5FE\">";
print "<td width=\"10%\" align=\"center\">".$row[5]."</td>";
print "<td width=\"66%\" align=\"center\"><a href=\"news_view.php?news_id=$row[0]\">".$row[1]."</a></td>";
if($row[6])
print "<td width=\"6%\" align=\"center\">有</td>";
else print "<td width=\"6%\" align=\"center\">无</td>";
print "<td width=\"6%\" align=\"center\"><a href=\"editnews.php?news_id=$row[0]&name=$name&pass=$pass\"><img src=\"modify.gif\" border=0 alt=修改此新闻></a></td>";
print "<td width=\"6%\" align=\"center\"><a href=\"delnews.php?news_id=$row[0]&name=$name&pass=$pass\"><img src=\"trash.gif\" border=0 alt=删除此新闻></a></td>";
if(!$row[8])
print "<td width=\"6%\" align=\"center\"><a href=\"checknews.php?news_id=$row[0]&name=$name&pass=$pass\">通过</a></td>";
else
print "<td width=\"6%\" align=\"center\">OK</td>";
print "</tr>";
}
print "</table>";
echo "</td></tr></table>";
if ($pages>1){
print"<br><div align=\"center\"><a href=\"$PHP_SELF?from=0&total=$total&pages=$pages&name=$name&pass=$pass\">";
print"首页</a>  ";
}
if ($pages>2){
print"<a href=\"$PHP_SELF?from=$step&total=$total&pages=$pages&name=$name&pass=$pass\">";
print"下一页</a>  ";
}
if ($pages>=2){
print"<a href=\"$PHP_SELF?from=";
print($pages*$MAXROWS-$MAXROWS)."&total=$total&pages=$pages&name=$name&pass=$pass\">末页</a></div>";
}
}
print "<HR color=#E3E3E3 noshade width=80% size=1>";
include "foot.inc.php";
?>


这是share.inc.php的源代码:

<?
$hostname="localhost";
$username="root";
$password="";
$database="enews";
$table="news";
$adminname="boss";
$adminpass="9001tyh";
//以下如果不熟悉,请不要自行修改
@$connect=mysql_connect($hostname,$username,$password)
or die('不能连接到服务器!');
@$select_db=mysql_select_db($database,$connect)
or die('连接数据库失败!');
?>
jxyuhua 2003-10-14
  • 打赏
  • 举报
回复
应该是没有正确连接上数据库,看看你的mysql_connect()这段是否写正确了。
jxyuhua 2003-10-14
  • 打赏
  • 举报
回复
贴出源代码才好解决。
ustb 2003-10-14
  • 打赏
  • 举报
回复
没有找到数据,这样试一下。
$res=@mysql_db_query($database,$str,$connect);
$total=@mysql_num_rows($res);(第86行)
$step=$total>$MAXROWS?$MAXROWS:$total;
$pages=ceil($total/$MAXROWS);
legendxia 2003-10-14
  • 打赏
  • 举报
回复
gz
clflove 2003-10-14
  • 打赏
  • 举报
回复
$str="select * from $table where username='".$name."' order by post_time desc";
改成
$str="select * from $table where username='$name' order by post_time desc";
shg918 2003-10-14
  • 打赏
  • 举报
回复
我说:楼主能否贴出数据库的结构来,我怀疑你的表里面有无phst_time这个域
beyond1981star 2003-10-14
  • 打赏
  • 举报
回复
出现这样的提示一般是 sql语句出错。仔细检查一下$str.

21,886

社区成员

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

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