求助啊 php 数组与mysql

<?php$username=$_POST['uid'];if(mysqli_connect_errno()){echo"数据库连接失败!<br>\n";echomysq... <?php
$username=$_POST['uid'];

if (mysqli_connect_errno()) {
echo "数据库连接失败!<br>\n";
echo mysqli_connect_error();
exit; // 退出程序,后面的所有语句将不再执行
}else
$db = @new mysqli("127.0.0.1", "root", "123456", "phpmyadmin");
$sql = "select * from userinfo where username='$username'";
$result = mysql_query($sql);
$arr = mysql_fetch_array($result); // 这是第12行
$name = $arr['name'];
$sex=$arr['sex'];
$age=$arr['age'];
$email=$arr['email'];
帮我改改 一运行 就是显示
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in ........changeinfo.php on line 12
展开
 我来答
mirager123
2011-08-06 · TA获得超过418个赞
知道答主
回答量:72
采纳率:0%
帮助的人:71.3万
展开全部
是有点问题,你确定你第11行有结果吗,你建了一个数据连接,这里没错,但是你没选择是哪个数据库,当然会出错了, 可以像下面那样
mysql_select_db($db,$conn);//这行是选择数据,$db是数据库名,,$conn是连接名
$result = mysql_query($sql); // 这是你原来的第11行
这样应该没问题了,还有你的11行,像你那样写法是可以,不过还是推荐像下面这样写好点
$result = mysql_query($sql,$conn);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yingger1004
2011-08-10 · 超过62用户采纳过TA的回答
知道小有建树答主
回答量:324
采纳率:0%
帮助的人:155万
展开全部
貌似 还没 连接到 数据库吧 ?
mysql_fetch_array(): supplied argument is not a valid MySQL result resource in ........changeinfo.php on line 12
最长见得原因 是 两种 ,一个是 SQL 语句写错了,不过看你的 SQL语句 应该是 对的
那么就是 数据库 没连接上去
因为 mysql_query($query) 是 返回资源的 ,上面 这两种问题 都可能会导致 这个 函数 无法返回 资源, 但是mysql_fetch_array($result)的 参数又 必须要写 资源 ,如果 没返回 资源的 变量 放到 里面 就会报告 参数 错误的 一个 警告
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
此用户被关机
2011-08-08 · TA获得超过317个赞
知道小有建树答主
回答量:220
采纳率:0%
帮助的人:238万
展开全部
lz的写法有问题,是面向对象和面向过程混淆了;
$db = @new mysqli("127.0.0.1", "root", "123456", "phpmyadmin");
这个是面向对象链接数据库,但是下面的链接数据库代码却都是面向过程,这样肯定不对啦,网上的例子很多,自己随便找一个啦
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
中东的笑容
2011-08-06 · TA获得超过301个赞
知道小有建树答主
回答量:989
采纳率:50%
帮助的人:224万
展开全部
你的sql语句可能存在问题,导致没有从查到有效的结果,所以无法fetch
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lifei6671
2011-08-06 · TA获得超过9228个赞
知道大有可为答主
回答量:3899
采纳率:25%
帮助的人:2768万
展开全部
你确认你的sql语句可以查询出来内容吗?
追问
我放在mysql中查询了   那个表中我没有填数据  所以返回结果
追答
表里面没有数据,这样你是用读取数据的函数会报错.可以试着屏蔽错误,或是添加一下内容.还可以判断一下数据是否存在.
mysql_query这个函数的第二个参数是可选的,如果没有填写的话默认会使用上一次打开的链接.因为你之前有打开的链接,所以一般不会出错.
你也可以试着填写第二个参数试试.
最主要的还是数据库里面没有数据!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式