读取数据库写在function里却不行

哎算了 2017-03-24 12:40:17

总共2个页面,分别是conn.php和ss.php,目前ss.php代码报错。

conn.php
$conn = new COM ( "ADODB.Connection", NULL, 65001) or die ( "ADO connect failed!" );

$connstr = "Driver={Microsoft Access Driver (*.mdb)};DBQ=" . realpath ( "db/1.mdb" ) . ";Uid=;Pwd=;";



ss.php代码,这里报错了。
require('conn.php');
function read_menu($resid){
$conn->open ( $connstr );
$sql1 = "select * from s_menu where yc=1 and class_parentid=$resid order by class_order desc";
$rsArr1 = $conn->execute ( $sql1 );
echo "<div class=st2>".$rsArr1["class_title"]." </div>";

}

$conn->open ( $connstr );

$sql = "select top 30 * from s_menu where yc=1 and class_parentid=0 order by class_order desc";

$rsArr = $conn->execute ( $sql );

if ($rsArr) {

while ( ! $rsArr->eof ) {

echo "<div class=st1>".$rsArr["class_id"]." ".$rsArr["class_title"]."</div>";


read_menu($rsArr["class_id"]);

$rsArr->MoveNext();

}

} else {

print $conn->ErrorMsg ();

}

$rsArr = null;

$conn->close ();

$conn = null;
...全文
121 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Frank_cic 2017-03-24
  • 打赏
  • 举报
回复
变量作用域的问题,方法内不能直接调用或引用方法外变量,需要传参进入或是use引入. $conn 和 $connstr 均未在function内定义,也未传入,当然是undefined. 你的read_menu()只能该处使用,并不能复用(至少从贴出代码看不出复用),没有存在的必要.

<?php
require('conn.php');

$conn->open( $connstr );

$sql = "select top 30 * from s_menu where yc=1 and class_parentid=0 order by class_order desc";
$rsArr = $conn->execute( $sql );

if ($rsArr) {
    while (!$rsArr->eof) {
        echo "<div class=st1>".$rsArr["class_id"]."  ".$rsArr["class_title"]."</div>";
        $sql1 = "select * from s_menu where yc=1 and class_parentid={$rsArr['class_id']} order by class_order desc";
        $rsArr1 = $conn->execute( $sql1 );
        echo  "<div class=st2>".$rsArr1["class_title"]." </div>";
        $rsArr->MoveNext();
        unset($sql1, $rsArr1);
    }
} else {
    print $conn->ErrorMsg();
}

$rsArr = null;
$conn->close();
$conn = null;
lamking 2017-03-24
  • 打赏
  • 举报
回复
去翻翻php教程,看看变量作用域相关的文章吧
哎算了 2017-03-24
  • 打赏
  • 举报
回复
都看看

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧