我一整天都在苦苦挣扎: 我正在显示一个带有子菜单的菜单,这个相同的代码正在生产中使得我的情况甚至更加怪异。我目前的开发环境使用的是PHP 5.4。
在开发环境中,此代码会导致空白页面没有错误(display_errors和error_log已激活并正常工作)。如果不是去第二次,我只是经历过一次,一切正常(但只显示一个项目)
$query = 'SELECT * FROM permisos as p LEFT JOIN secciones_web as s ON p.id_seccion_web = s.id WHERE s.parent_id = 0 AND s.activo = 1 AND (p.seccion = "'.$_SESSION["user_section"].'" OR p.usuario="'.$_SESSION["user"].'") GROUP BY p.id_seccion_web ORDER BY s.orden ASC';
$results = mysql_query($query);
$menu = "";
while($rowp = mysql_fetch_assoc($results)){
$menu.='<li class="submenu"><a href="#"><i class="icon '.$rowp["icon"].'"></i> <span>'.$rowp["nombre"].'</span></a><ul>';
$q = 'SELECT * FROM permisos as p LEFT JOIN secciones_web as s ON p.id_seccion_web=s.id WHERE s.parent_id='.$rowp["id"].' AND s.activo=1 AND (p.seccion = "'.$_SESSION["user_section"].'" OR p.usuario="'.$_SESSION["user"].'") GROUP BY p.id_seccion_web ORDER BY s.orden ASC';
$resultado = mysql_query($q,$db_conn);
while($rowsubmennu = mysql_fetch_assoc($resultado)){
if($_SESSION["user_section"] == "Almacén" && $rowsubmennu["url"] == "pedido-almacen.php"){
$menu.='<li><a href="'.$rowsubmennu["url"].'" class="navi">'.$rowsubmennu["nombre"].'<span class="label label-pedidos">0</span></a></li>';
}else{
$menu.='<li><a href="'.$rowsubmennu["url"].'" class="navi">'.$rowsubmennu["nombre"].'</a></li>';
}
}
$menu.= "</ul></li>";
}
为什么第二次撞击我的应用程序没有错误的任何线索?
更新:完整页面:http://pastebin.com/FPrQgsbE
答案 0 :(得分:0)
首先检查错误:
$resultado = mysql_query($q,$db_conn);
if (!$resultado) {
die('Invalid query: ' . mysql_error());
}
while($rowsubmennu = mysql_fetch_assoc($resultado)){
并且在已发布的代码片段中未设置$db_conn
。它被初始化的地方?