php执行mysql语句返回如何处理

所有代码段为:

$con = mysql_connect("**.**.**.**" ,"tagtree","tagtree");
$table = "good";
$child_id = "nice";
$sql = "select count(1) from pn_classtag where type=\"$table\" and children_id !=\"$child_id\" and pn_num=0";
$ret = mysql_query($sql,$con);
mysql_close($con);
print_r($ret);
return $ret;

执行之后,打印:Resource id #6
需求只想求出总量,请问对 mysql_query()调用之后应如何处理

繁星淼淼
浏览 1132回答 3
3回答

元芳怎么了

mysql_query()函数执行过后,是一个mysql扩展的内部对象哦,也可以说是一个句柄,并不是一个结果集。它所得到的那个$ret,你需要使用mysql_fetch_row()、mysql_fetch_assoc()、mysql_fetch_array()以及mysql_fetch_field()这样的函数来取得它的结果集才行哦亲。你的程序在:$ret = mysql_query($sql,$con);一行下面,需要加上:$result = mysql_fetch_array($ret);之后,你再print_r或者var_dump($ret),你就可以看到结果了哦。

HUX布斯

SELECT 语句用于从数据库中选取数据。语句1:SELECT * FROM table_name解说:意思就是读取整个表table_name里面的数据显示出来语句1:SELECT * FROM table_name Where x = 1解说:意思就是读取表table_name里面键名为:x 值为:1的 数据显示出来例子:<?php$con = mysql_connect("localhost","peter","abc123");if (!$con){die('Could not connect: ' . mysql_error());}mysql_select_db("my_db", $con);$result = mysql_query("SELECT * FROM Persons");while($row = mysql_fetch_array($result)){echo $row['FirstName'] . " " . $row['LastName'];echo "<br />";}mysql_close($con);?>数据库采用UTF8编码,而页面申明编码是GB2312,这是最常见的产生乱码的原因。这时候在PHP脚本里面直接SELECT数据出来的就是乱码,需要在查询前先使用:mysql_query("SET NAMES GBK");或mysql_query("SET NAMES GB2312");来设定MYSQL连接编码,保证页面申明编码与这里设定的连接编码一致(GBK是GB2312的扩展)。如果页面是UTF-8编码的话,可以用:mysql_query("SET NAMES UTF8"); 注意是UTF8而不是一般用的UTF-8。假如页面申明的编码与数据库内部编码一致可以不设定连接编码。代码如下:$mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass);mysql_query("SET NAMES 'GBK'");
打开App,查看更多内容
随时随地看视频慕课网APP