php问题,搞了好几天,$result=mysqli_query($link,$sql); $result的值一直返回假,求帮助,快要疯掉了

$link=mysqli_connect($host,$user,$password); //连接数据库
mysqli_select_db($link,$db); //选择数据库
mysqli_query($link,"set names GB2312"); //设定字符集
$sql = "select name0 from user0 where name0 = '$user'"; //SQL语句
$result=mysqli_query($link,$sql); //执行sql语句,返回结果
if(!$result)
{
echo '失败了!';
}
$num = mysqli_num_rows($result); //统计执行结果影响的行数

请检查您的mysql连接是否正常,请检查sql语句是否有误;

下面是mysqli_query函数的用法详解:

定义和用法

mysqli_query() 函数执行某个针对数据库的查询。

语法

mysqli_query(connection,query,resultmode);

参数                        描述

connection        必需。规定要使用的 MySQL 连接。    

query                必需,规定查询字符串。    

resultmode        可选。一个常量。可以是下列值中的任意一个:

MYSQLI_USE_RESULT(如果需要检索大量数据,请使用这个)

MYSQLI_STORE_RESULT(默认)

技术细节

返回值:

针对成功的 SELECT、SHOW、DESCRIBE 或 EXPLAIN 查询,将返回一个 mysqli_result 对象。针对其他成功的查询,将返回 TRUE。如果失败,则返回 FALSE。    

PHP 版本:5+    

更新日志:在 PHP 5.3.0 中新增了异步查询的功能。    

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-07-29

首先要检查你的数据库账号密码是否正确,要查询的表里是否有数据

示例代码如下:

//假定数据库用户名:root,密码:123456,数据库:database
$link=mysqli_connect("localhost","root","123456","database");
if (mysqli_connect_errno($link))
{
echo "连接 MySQL 失败: " . mysqli_connect_error();
}
// 执行查询
mysqli_query($link,"SELECT * FROM table");
mysqli_close($con);

另外,使用pdo进行数据链接是现在推荐的方式

本回答被网友采纳
第2个回答  2017-10-04
你的运行结果是用var_dump看过是false吗?这个函数的返回值应该是影响数据的行数,有时候它就算正常运行,返回值也是0,如果你是想判断它是否正常运行,推荐你用$result===false,这样如果返回值是0,这个表达式也是不成立的,只有在返回值是false的时候,表示函数没有正常运行,这个时候表达式才成立。
我遇到过一个情况跟你类似,我在用thinkphp的delete方法的时候,发现我本来已经删除了一行数据,这个时候返回值它并没有返回1而是返回0。
第3个回答  2017-06-26
你这个方法使用的不对:
//实例化数据库对象,返回资源句柄
$con = mysqli_connect();
//写出需要执行的sql
$sql = 'select * from xxx';
//使用这个方法去执行sql
mysqli_query($sql,$con);
第4个回答  2017-09-07

    打印一下$link,看看是不是连上数据库了。

    如果连上,使用客户端或者终端,连接数据库,在里面执行你的sql,看结果。如果没有连上,往上找连接数据库的地方,看看有没有问题。

    排除这两处问题,基本就能找到原因了。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网