• User Newbie

    Formattare correttamente ril risultato di una query (PHP / MySql)

    Ciao a tutti,
    vi propongo un quesito sperando di trovare una soluzione!

    Ho creato questa query:

    SELECT Giorno_set, Livello, Orario
    FROM a, b, c
    WHERE a.Gruppo = b.gruppo
    AND b.giorno_set = c.Giorno
    AND a.Vie = 'Ven'
    AND b.Civici_Utenze = '4'
    ORDER BY a.posizione, a.livello

    e la stampo a video in questo modo:

    $risultato=mysql_query($query);
    $numrows = mysql_num_rows($risultato);
    for ($x = 0; $x < $numrows; $x++){
    $resrow = mysql_fetch_row($risultato);
    $giorno_set = $resrow[0];
    $livello = $resrow[1];
    $Orario = $resrow[2];
    echo "
    <tr>
    <td>" . $giorno_set . "</b></td>
    <td>" . $livello . "</b></td>
    <td>" . $Orario . "</b></td>
    </tr>

    ottenendo una tabella come questa:

    [TABLE]

    [TD]Giorno[/TD]
    [TD]Livello[/TD]
    [TD]Orario[/TD]
    [/TR]

    [TD]LUNEDI[/TD]
    [TD]2[/TD]
    [TD]12.00 ? 13.30[/TD]
    [/TR]

    [TD]LUNEDI[/TD]
    [TD]4[/TD]
    [TD]16.30 ? 18.00[/TD]
    [/TR]

    [TD]MARTEDI[/TD]
    [TD]2[/TD]
    [TD]16.30 ? 18.00[/TD]
    [/TR]

    [TD]MARTEDI[/TD]
    [TD]4[/TD]
    [TD]12.00 ? 13.30[/TD]
    [/TR]

    [TD]MERCOLEDI[/TD]
    [TD]1[/TD]
    [TD]12.00 ? 13.30[/TD]
    [/TR]

    [TD]MERCOLEDI[/TD]
    [TD]5[/TD]
    [TD]16.30 ? 18.00
    [/TD]
    [/TR]
    [/TABLE]

    Io però vorrei ottenere questo risultato:

    [TABLE]
    [TR="bgcolor: #ffffff"]
    [TD="class: Normal"]Giorno Settimana[/TD]
    [TD="class: Normal"]Livello 1[/TD]
    [TD="class: Normal"]Livello 2[/TD]
    [TD="class: Normal"]Livello 3[/TD]
    [TD="class: Normal"]Livello 4[/TD]
    [TD="class: Normal"]Livello 5[/TD]
    [/TR]
    [TR="bgcolor:"]
    [TD="class: Normal"]LUNEDI[/TD]
    [TD="class: Normal"] [/TD]
    [TD="class: Normal"] 12.00 - 13.30 [/TD]
    [TD="class: Normal"]
    [/TD]
    [TD="class: Normal"]16.30 - 18.00
    [/TD]
    [TD="class: Normal"]
    [/TD]
    [/TR]
    [TR="bgcolor:"]
    [TD="class: Normal"]MARTED
    [/TD]
    [TD="class: Normal"] [/TD]
    [TD="class: Normal"]16.30 - 18.00 [/TD]
    [TD="class: Normal"]
    [/TD]
    [TD="class: Normal"]12.00 - 13.30
    [/TD]
    [TD="class: Normal"]
    [/TD]
    [/TR]
    [TR="bgcolor:"]
    [TD="class: Normal"]MERCOLED
    [/TD]
    [TD="class: Normal"]12.00 - 13.30 [/TD]
    [TD="class: Normal"]
    [/TD]
    [TD="class: Normal"]
    [/TD]
    [TD="class: Normal"]
    [/TD]
    [TD="class: Normal"]16.30 - 18.00
    [/TD]
    [/TR]
    [/TABLE]

    qualcuno può aiutarmi?

    Grazie!


  • User Attivo

    Ciao Thaco e benvenuto nel ForumGT
    sei riuscito a fare progressi con il tuo problema? Io personalmente lavorerei sulla presentazione dei risultati e lascerei la query MySQL intatta.
    Potresti fare un ciclo fra i tuoi risultati e se il giorno è lo stesso incasellarli nel modo corretto.


  • User Newbie

    Ciao Pietro, purtroppo no, ho fatto un po' di tentativi ma non ne vengo a capo..
    Fin'ora non ho toccato la query ma inizio a credere sia l'unico modo...


  • User Attivo

    Sicuramente per non toccare la query dovresti salvare i risultati in una matrice e scorrere quella(ipotizzo con un for che scorre tutte le righe e un while che controlla se ci sono altre righe uguali a quella che stai scorrendo))
    però sono solo ipotesi, bisognerebbe fare dei test seri