具有多个MySQL结果的PHP函数只返回一条记录

时间:2009-10-15 11:34:52

标签: php mysql

这是我正在呼唤的功能。

function GetSubmissions($coach){
                $result = mysql_query("SELECT * FROM `ptable` WHERE coach = '$_SESSION[username]'") or trigger_error(mysql_error()); 
                while($row = mysql_fetch_array($result)){ 
                foreach($row AS $key => $value) { $row[$key] = stripslashes($value); } 
                    $id = $row['id'];
                    $teampre = $row['team'];
                    $eventpre = $row['event'];
                    $statuspre = $row['status'];
                    $eventarray = DecodeEvent($eventpre);
                        $event = $eventarray[0];
                        $cat = $eventarray[1];
                        $subcat = $eventarray[2];
                        $division = $eventarray[3];
                        $type = $eventarray[4];
                    $teamarray = explode(",", $teampre);
                        foreach ($teamarray AS $tkey => $tvalue){
                            $result = mysql_query("SELECT * FROM `students` WHERE id = '$tvalue'") or trigger_error(mysql_error()); 
                            while($row = mysql_fetch_array($result)){ 
                            foreach($row AS $skey => $svalue) { $row[$skey] = stripslashes($svalue); } 
                            $firstname = $row['firstname'];
                            $lastname = $row['lastname'];
                            $teamgo .= "$firstname $lastname<br/>";
                            }

                }       
                    $push .= "<div id=submission><div id=event>$event</div><div id=status>$statuspre</div><div id=subinfo>$cat $subcat $division $type</div><div id=team>$teamgo</div></div>";
                }           

    return $push;
}

它有效,除了它只返回一个结果。我在这里和那里做了一些小调整,但我没有看到输出有任何积极的变化。任何我出错的想法?​​

2 个答案:

答案 0 :(得分:2)

您已嵌套$ result变量。您应该尽量避免使用相同的变量名两次。在第二个foreach循环中重命名第二个可能就可以了。

答案 1 :(得分:1)

对内循环使用相同的$result

相关问题