php问题,搞了好几天,$result=mysqli_query($link,$sql); $result的值一直返回假,求帮助,快要疯掉了 20
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 中新增了异步查询的功能。
首先要检查你的数据库账号密码是否正确,要查询的表里是否有数据
示例代码如下:
//假定数据库用户名: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进行数据链接是现在推荐的方式
我遇到过一个情况跟你类似,我在用thinkphp的delete方法的时候,发现我本来已经删除了一行数据,这个时候返回值它并没有返回1而是返回0。
//实例化数据库对象,返回资源句柄
$con = mysqli_connect();
//写出需要执行的sql
$sql = 'select * from xxx';
//使用这个方法去执行sql
mysqli_query($sql,$con);
打印一下$link,看看是不是连上数据库了。
如果连上,使用客户端或者终端,连接数据库,在里面执行你的sql,看结果。如果没有连上,往上找连接数据库的地方,看看有没有问题。
排除这两处问题,基本就能找到原因了。