免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 2367 | 回复: 13
打印 上一主题 下一主题

PHP出错,请大家帮助我一下 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-03-30 10:50 |只看该作者 |倒序浏览
出错代码如下:

36行   $dbsqlstr = "select * from ExpertTalk where ETID=".$ETId ;
37行   $getprod= mysql_db_query($dbname1, $dbsqlstr, $mysql_local_link);   
38行   $prodrow = mysql_fetch_array($getprod) ;    //执行到这段出错.


浏览器出错消息:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\website\UserInfo\ExpertTalkDetail.php on line 38



谢谢啊.

论坛徽章:
0
2 [报告]
发表于 2006-03-30 10:59 |只看该作者
命令行 运行你的 sql 语句 确保 没有错误

论坛徽章:
0
3 [报告]
发表于 2006-03-30 11:37 |只看该作者
你的mysql_db_query 返回值是 $resource_link吗?

请确定是这样写的

function mysql_db_query($dbname1, $dbsqlstr, $mysql_local_link)
{
    //从略

     $link = mysql_query($dbsqlstr):
     return $link;
}

论坛徽章:
0
4 [报告]
发表于 2006-03-30 11:49 |只看该作者
楼上的谢谢啊,我不懂要如何改,你帮助我看看,这个文件只有几条PHP代码:

1.代码如下:                  
<?php
     
   $dbsqlstr = "select * from ExpertTalk where ETID=".$ETId ;
   $getprod= mysql_db_query($dbname1, $dbsqlstr, $mysql_local_link);   
   $prodrow = mysql_fetch_array($getprod) ;
?>   


2.我用phpmyadmin执行
mysql_db_query("opdb",SELECT * FROM member WHERE 1,mysql_local_link)

为什么不成功,这个mysql_local_link要如何表示啊.

论坛徽章:
0
5 [报告]
发表于 2006-03-30 12:53 |只看该作者
抱歉,我没用过mysql_db_query()这个函数,还以为是你自定义的呢
建议你按照php手册的说法更改你的程序

以下引自 php手册


mysql_db_query

(PHP 3, PHP 4, PHP 5)
mysql_db_query -- 发送一条 MySQL 查询
说明
resource mysql_db_query ( string database, string query [, resource link_identifier] )

根据查询结果返回一个正的 MySQL 结果资源号,出错时返回 FALSE。本函数会对 INSERT/UPDATE/DELETE 查询返回 TRUE/FALSE 来指示成功或失败。

mysql_db_query() 选择一个数据库并在其上执行查询。如果没有提供可选的连接标识,本函数会去找一个到 MySQL 服务器的已打开的连接,如果找不到已打开连接则会尝试无参数调用 mysql_connect() 来建立一个。

注意此函数不会切换回先前连接到的数据库。换句话说,不能用此函数临时在另一个数据库上执行 sql 查询,只能手工切换回来。强烈建议用户在 sql 查询中使用 database.table 语法来替代此函数。

参见 mysql_connect() 和 mysql_query()。

    注: 自 PHP 4.0.6 起不提倡使用此函数。不要用此函数,用 mysql_select_db() 和 mysql_query() 来替代。

2.我用phpmyadmin执行
mysql_db_query("opdb",SELECT * FROM member WHERE 1,mysql_local_link)

你用phpmyadmin在哪里执行php代码呢? 我只知道那个文本框只能执行sql语句

论坛徽章:
0
6 [报告]
发表于 2006-03-30 14:21 |只看该作者
1.难道跟PHP版本有关系,我这代码是旧的,而PHP是新的.

2.嗯.执行SQL语句.

论坛徽章:
0
7 [报告]
发表于 2006-03-30 14:39 |只看该作者
$mysql_local_link=mysql_connect("localhost","root","");//该成你自己实际的数值

然后把这句话加在你上面三行代码的开头

论坛徽章:
0
8 [报告]
发表于 2006-03-30 15:52 |只看该作者
楼上的谢谢啊,我试了,还是一样的错误.

网页第一级的数据都可以读取出来,具体读取某个网页的详细数据就出现这种错误.

[ 本帖最后由 19821119 于 2006-3-30 16:00 编辑 ]

论坛徽章:
0
9 [报告]
发表于 2006-03-30 16:29 |只看该作者
搞定,是SESSION问题.OK啦

论坛徽章:
0
10 [报告]
发表于 2006-03-30 16:54 |只看该作者
原帖由 19821119 于 2006-3-30 16:29 发表
搞定,是SESSION问题.OK啦




session 跟 sql 语句有关系么?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP