你的这个function 设计得不怎么好
require("../include/db_con_and_sele.inc.php");
function parentshow($tempID,$db){
$sql="select ID,parentID from forum where ID='$tempID'";
$rs=mysql_query($sql,$db);
$array=mysql_fetch_array($rs);
if($array["parentID"]=="0")
return $array[ID];
else
parentshow($array["parentID"],$db);
}
$array[parentId]改为
$array["parentId"]
require("../include/db_con_and_sele.inc.php");
function parentshow($tempID,$db){
$sql="select ID,parentID from forum where ID='$tempID'";
$rs=mysql_query($sql,$db);
$array=mysql_fetch_array($rs);
if($array["parentID"]=="0")
return $array[ID];
else
parentshow($array["parentID"],$db);
}
$array[parentId]改为
$array["parentId"]
parentshow($array[parentID]);改成else
return parentshow($array[parentID]);
看看
function parentshow($tempID){
require("../include/db_con_and_sele.inc.php");
$sql="select ID,parentID from forum where ID='$tempID'";
$rs=mysql_query($sql,$db);
$array=mysql_fetch_array($rs);
if($array[parentID]=="0")
return $array[ID];
else
parentshow($array[parentID]);//主意不要用同一函数改
p($array[parentID])
}
function p($p)
{
$sql="select ID,parentID from forum where ID='$p'";
.......................
}
?>
改为
return parentshow($array[parentID]);每次都要与数据库交互,效率成问题
<?
function g($a){
if ($a==1){return a;}
$a--;
if ($a>0){
return g($a);
}
}
echo g(9);
?>
返回为1
如果把return g($a);前面的return去掉,就返回不了了,我说的就是在第归调用的函数名前加return就行了