Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    605

    Costruire Tavola sinottica in php

    Ciao a tutti,
    ragazzi sto costruendo una tavola sinottica, con degli orari in verticale e le sale in orizzontale.
    L'esempio l'ho costruito con questo script:

    Codice PHP:
    echo "<table align=center border=1 bordercolor=red style=\"width:850px\">";
        echo 
    "<tr><td colspan=" $colspan " >\r\n";
        echo 
    "<center><h4>" .  strtoupper($giorno_selezionato) . "</h4></center>\r\n";
        echo 
    "</td></TR>";
        
    $prima =  "<TR><TD  style=\"width:" $width "px\" ></TD>\r\n";
            for(
    $i=0;$i<count($arrSaleByDay);$i++){
                if(
    $i==0){
                    echo 
    "<TR><TD style=\"width:" $width "px\" > </TD>";
                }    
                echo 
    "<TD align=center style=\"width:" $width "px\">";
                echo 
    "[B]" .  strtoupper($arrSaleByDay[$i]["Sala"]) . "[/B]</td>";
        }
        echo 
    "</TR>\r\n";    
        for(
    $i=0;$i<count($query_dett);$i++){
            
             echo 
    "<TR>\r\n";
                    echo 
    "<TD align=center>";
                    echo 
    date("H:i"strtotime(strtoupper($query_dett[$i]["Inizio"]))) . " - ";
                    echo 
    date("H:i"strtotime(strtoupper($query_dett[$i]["Fine"]))) . "</TD>";
                    
                            
                            for(
    $a=0;$a<count($arrSaleByDay);$a++){
                                echo 
    "<TD align=center width=90>"
                                if(
    $query_dett[$i]["Sala"]==$arrSaleByDay[$a]["Sala"])
                                    echo 
    $query_dett[$i]["Sessione"];
                                    
                                echo 
    "</TD>";
                            }
            echo 
    "</TR>\r\n";
        }
        echo 
    "</table>\r\n"

    e si può vedere il risultato nella prima tabella a questo link
    http://www.ristorantezenobia.it/site...st/tabella.htm

    la seconda invece rappresenta i dati dati come vengo estratti dalla query che utilizzo.
    Insoma tutto ok.. se non fosse che da qualche ora sto cercando di mettere..... di non far ripetere quella riga che và dalla 11:00 - 13:00,. Insomma in questo caso la riga dovrebbe essere unica con SESSIONE 2 in sala b e SESSIONE TESTin sala F.

    $arrSaleByDay estrae tutte le sale presenti per quel giorno in ordine mentre $query_dett estrae i dati così come li prende la quesry della seconda tabella.

    Spero in un voistro aiuto....... perchè la cosa mi incomincia a far impazzire...
    sarà che ormai da due ore che ci sto a sbattere la testa .. non ci vedo più.....

    Grazie
    Giuseppe

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    605
    nesuno con un piccolo aiutino....
    buona giornata

  3. #3
    Utente di HTML.it L'avatar di echoweb
    Registrato dal
    Sep 2008
    Messaggi
    419
    Ciao,

    prova ad usare nella query che recupera l'orario una DISTINCT, in modo da far vedere solo una volta l'orario, che in questo caso ha associato due sale...


    "Non soffocare la tua ispirazione e la tua immaginazione,
    non diventare lo schiavo del tuo modello"

    Vincent van Gogh

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    605
    grazie della risposta...

    forse la scelta di costruire una tabella in questo modo con ilciclo che h postato prima.. e proprio perchè la query meglio di questa non ci riesco a farla...
    A me server il min e il max raggruppato per sessione, il problema è proprio se incontro un min e max uguali con sessione diversa....
    la query è questa...

    Codice PHP:

    sql
    ="SELECT MIN([dbo].[Programma Scientifico].Inizio) as Inizio,
                    MAX([dbo].[Programma Scientifico].Fine)  as Fine,
                    [dbo].[Programma Scientifico].Sessione,
                    [dbo].[Programma Scientifico].Sala
                FROM    [dbo].[Partecipanti Evento] 
                RIGHT JOIN 
                    [dbo].[Programma Scientifico] ON 
                    [dbo].[Partecipanti Evento].ID =[dbo].[Programma Scientifico].[ID Partecipante] 
                WHERE 
                    [dbo].[Partecipanti Evento].[Codice Evento]='" 
    $cod_Evento "' and 
                    REPLACE(CONVERT(VARCHAR(10),[dbo].[Programma Scientifico].[Inizio], 111), '/', '')='" 
    $giorno "'
                    group by [dbo].[Programma Scientifico].Sessione,[dbo].[Programma Scientifico].Sala
                    ORDER BY MIN([dbo].[Programma Scientifico].Inizio)"
    ;

            echo  
    "
    $sql "
    "
    ;
            return 
    $this->db->query_odbc($sql); 
    e vi giuro che mi sta facendo impazzire.... sta costruzione di tabella....

    grazie per l'eventuale suggerimento...
    buona serata
    Giuseppe

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.