Ciclo for che conta solo una volta

Ho un piccolo problema con un for capriccioso e nello specifico quello sottolineato mi conta su 10 valori solo uno invence sul primo for vedo l'array di tutti ogni volta che† passo sopra all'array in questione che Ť: $rowmenu[$i].

Mi potete dare una mano per questo piccolissimo problema?† :bye:

<?php
#include_once ('mysql_repository.php');
include_once ('errormessage_repository.php');
#include_once ('../php/connect_db.php');
include_once('../../webconf/config_egaweb_inc.php');
#include_once ('include_session.php');

#Connessione al db
$connect_db = @mysql_connect($connection,$db_username,$db_password)
† or die ($error_connectToHost."<i>".mysql_error()."</i>"."</font></SPAN>");††††††
† @mysql_select_db($db_name, $connect_db)
† †or die ($error_selectDb."<i>".mysql_error()."</i>"."</font></SPAN>");
††† 
† # Eseguo una select con id ati ricavati dal logon creare per 
† # ordinando in maniera crescente i vari livelli di mený†††
† $querymenu_exe = " SELECT egaweb_menu.menu_numtend,egaweb_menu.menu_menulev1,egaweb_menu.menu_menulev2,egaweb_menu.menu_descrizione_menu,
† egaweb_menu.menu_pagina,egaweb_menu.menu_cdc, egaweb_menu.menu_profilo, egaweb_menu.menu_matricola,egaweb_menu.menu_egasett, 
† egaweb_menu.menu_visual,egaweb_menu.menu_princlivmenu,egaweb_menu.menu_primolivmenu,egaweb_menu.menu_secondolivmenu 
† FROM egaweb_menu WHERE egaweb_menu.menu_cdc = '$cdc'† AND egaweb_menu.menu_profilo = '$profilo' AND egaweb_menu.menu_matricola = $matricola 
† AND egaweb_menu.menu_lingua = '$lingua' AND egaweb_menu.menu_egasett = '$egasett'† 
† ORDER BY egaweb_menu.menu_numtend, egaweb_menu.menu_menulev1, egaweb_menu.menu_menulev2 ";† 

† # Eseguo la query e mi tiro fuori i dati di menu, settore aziendale e operatori interni
† $query_menu = mysql_query($querymenu_exe,$connect_db)
††††††††††or die ($error_menu_load."<i>".mysql_error()."</i>"."</font></SPAN>");
†††††††††
# Per tutte le righe ottenute
for ($i = 0; $i < mysql_num_rows($query_menu); $i++) {
† †$rowmenu[$i] = mysql_fetch_array($query_menu, MYSQL_ASSOC);
}

# Inizializzo la stringhe dei diversi mený
$menu = ""; //Variabile generale di appoggio per i diversi menu

# Passo tutte le righe di risultato della mia select
[u]for ($i = 0; $i < count($query_menu); $i++) {[/u]

† †# Salvo i valori in variabili temporanee
† †$numtend = $rowmenu[$i]["menu_numtend"];
† †$menulev1 = $rowmenu[$i]["menu_menulev1"];†††
† †$menulev2 = $rowmenu[$i]["menu_menulev2"];†††
† †$descrmenu = $rowmenu[$i]["menu_descrizione_menu"];†††
† †$pagina = $rowmenu[$i]["menu_pagina"];
† †$princlivmenu = $rowmenu[$i]["menu_princlivmenu"];
† †$primolivmenu = $rowmenu[$i]["menu_primolivmenu"];
† †$secondolivmenu = $rowmenu[$i]["menu_secondolivmenu"];† 
† †$visual = $rowmenu[$i]["menu_visual"];† 
† †
† if (($numtend > 0) && ($menulev2 > 0) && ($visual == "si")) {
†††# secondo livello
† † †††$menu .= "<tr><td class=\"menu-opz\" onmouseover=\"this.classname='menu-opz-over'\"
††††††onmouseout=\"this.classname='menu-opz'\" id=\"bordo_menu\">
††††††<a href=\"pagina.php?pagina=$pagina&descrizione=$descrmenu\">".htmlspecialchars("&nbsp; &nbsp;&nbsp;")."$descrmenu</a>
††††††</td></tr></tbody></table></td></tr>";
† †} else if ($numtend == 0) {
††††††# principale
††††††† †if (($pagina == "") && ($visual == "si")){
††††††† †$menu .= "<tr><td class=\"menu-opz\" onmouseover=\"this.classname='menu-opz-over'\" onmouseout=\"this.classname='menu-opz'\" id=\"bordo_menu\" title=\"$descrmenu\">
†††††††††$descrmenu/td></tr>";
††††††† †}else{
†††††††† †$menu .= "<tr><td class=\"menu-opz\" onmouseover=\"this.classname='menu-opz-over'\" onmouseout=\"this.classname='menu-opz'\" id=\"bordo_menu\" title=\"$descrmenu\">
†††††††††<a href=\"pagina.php?pagina=$pagina&principale=$princlivmenu&primo=$primolivmenu\">$descrmenu</a></td></tr>";

††††††† †}
† †} else {
††††††# primo livello
† † † † if (($visual == "si") && ($pagina == "")) {
†††††††††$menu .= "<tr><td id=\"bordo_menu\">$descrmenu</td></tr>";
††††††} else {††††††††† 
†††††††††$menu .= "<tr><td id=\"bordo_menu\"><table width=\"100%\"><tbody><tr>
†††††††††<td class=\"menu-opz\" onmouseover=\"this.classname='menu-opz-over'\" onmouseout=\"this.classname='menu-opz'\">
†††††††††<a href=\"pagina.php?pagina=$pagina&primo=$primolivmenu&secondo=$secondolivmenu\">"
†††††††††.htmlspecialchars("&nbsp; &nbsp;")."<b>$descrmenu<b/></a></td></tr>";
†††† † }
† †} # end else primo livello

}† # end for
$_SESSION['MenuDHTML'] = $menu;
?>
inviato 8 anni fa
EKELON77
X 0 X

Secondo voi come mai non vŗ? Attendo aiuti o suggerimenti.† O0

risposto 8 anni fa
EKELON77
X 0 X

Questo ciclo FOR Ť sbagliato:

for ($i = 0; $i < count($query_menu); $i++)

infatti la funzione count() va usata su un array per contarne gli elementi ma $query_menu non Ť un array!

†:bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

e quindi come devo utilizzare il ciclo ?† :bye:

risposto 8 anni fa
EKELON77
X 0 X

prova con count($rowmenu)

†:bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

scusami se te lo dico adesso ma l'avevo capito lo stesso vendendo un vecchio topi cdi zeta80 sulla generazione di stesso con un applet, questo Ť il topic:

http://www.phpnews.it/forum/index.php?topic=1397.msg9426#msg9426† O0† :bye:

risposto 8 anni fa
EKELON77
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda