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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 中新增了异步查询的功能。    

参考技术A

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

示例代码如下:

//假定数据库用户名: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进行数据链接是现在推荐的方式

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

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

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

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

phpstorm xdebug 无法断点调试问题

最近用phpstorm+xdebug调试一段php代码的时候莫名其妙的无法切入断点调试

本地用的php集成环境是UPUPW ANK V1.1.7 64Bit

选择了集成环境中php版本为7.1.x

搞了好几天了一切配置都很正常之前都是好好的最后实在是没招了就改了下php版本5.6 既然可以了,我又把7.0至7.3都试了一遍发现7.0版本以上(不包括7.0)都无法正常调试,真是让人很无语。。。。。具体我也没去找原因~ 如果你碰到了和我一样的问题不防该下php版本再试试。

 

以上是关于php问题,搞了好几天,$result=mysqli_query($link,$sql); $result的值一直返回假,求帮助,快要疯掉了的主要内容,如果未能解决你的问题,请参考以下文章

phpstorm xdebug 无法断点调试问题

javaweb添加课程mysql8.0版本

好几天没有写随笔了,今天打开了,随便留点什么吧

ubuntu下apache+mysql+php+mysql等之webserver搭建

搞了个LAMP,没事也整理个问题集

搞了个LAMP,没事也整理个问题集