findSql($sql)和mysql_query($sql)有什么不同?

#1 yorian

findSql($sql)和mysql_query($sql)有什么不同?
测试发现
$sql = "SELECT count(*)  FROM spgb_gb";$gb = spClass('gb'); // 初始化留言本模型类$result = $gb->findSql($sql); // 执行查找dump($result); // 输出结果输出结果是一个二维数组,php中想使用mysql_fetch_array获取统计出来的数字,行不通,不知什么原因?

2013-01-22 17:31:31

#2 jake

findSql比mysql_query更方便,直接返回的就是结果的数组。

“php中想使用mysql_fetch_array获取统计出来的数字,行不通,不知什么原因?”不明白什么意思,或者可以参考一下php的官方手册

2013-01-22 17:40:47

#3 yorian

“php中想使用mysql_fetch_array获取统计出来的数字,行不通,不知什么原因?”不明白什么意思
我是用findSql函数执行sql的时候,想从结果中获取一个字段的值。
那使用findSql函数执行sql的时候怎么配合mysql_fetch_array来用?

2013-01-22 17:49:57

#4 yorian

比如:

$sql = "SELECT count(*) FROM $table";
//$result = $molule->findSql($sql);
$result = mysql_fetch_array(mysql_query($sql));
$rw['counts'] = $result[0];
                       
dump($rw['counts']);//直接输出的便是我想要的数字

2013-01-22 17:53:37

#5 jake

$result = $molule->findSql($sql);
$result[0]["counts"] 就是你要的数字~~~

嫌不好看?

$result = $molule->findSql($sql);
$counts = $result[0]["counts"];
echo $counts;

好看了吧

2013-01-22 18:31:32

#6 xieguolun


$id = isset($_POST['id']) ? intval($_POST['id']) : 0;

include 'conn.php';

$result = array();
$rs = mysql_query("select * from nodes where parentId=$id");
while($row = mysql_fetch_array($rs)){
        $node = array();
        $node['id'] = $row['id'];
        $node['text'] = $row['name'];
        $node['state'] = has_child($row['id']) ? 'closed' : 'open';
        array_push($result,$node);
}

echo json_encode($result);

function has_child($id){
        $rs = mysql_query("select count(*) from nodes where parentId=$id");
        $row = mysql_fetch_array($rs);
        return $row[0] > 0 ? true : false;
}

以上是生成支持easyui Tree的东东,请问如用本框架怎么改写?
如果是两个表关联的更应怎么改写呢?

2013-12-22 23:13:24

#7 jake

xieguolun 发表于 2013-12-22 23:13
请使用findSQL改写即可。

另外,表间关联的使用,请参考speedphp手册,谢谢。

2013-12-23 08:45:53