Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Tabelle dinamiche e query

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2012
    Messaggi
    178

    Tabelle dinamiche e query

    Ciao a tutti,
    ho un problema che non riesco a risolvere... ora vi spiego...
    Ho 2 tabelle in un db:
    Categoria
    Scadenze

    In pratica creo delle categorie per poi popolarle con le scadenze, tipo: categoria Bollo, scadenza Auto 01-01-2018. Fin qui tutto ok!

    In pratica creo la mia pagina html con delle tabelle, n tabelle per n categorie attive, qui viene il bello... devo popolare le singole tabelle con le vere scadenze... il codice è questo ( si tratta di una bozza da rivisitare)

    Codice PHP:

    $query 
    "SELECT count(*) as tot FROM categoria WHERE categoria_eliminata='0' ; ";$rs =$mysqli->query($query);$modifica $rs->fetch_assoc();


    $query1 "SELECT * FROM scadenza  WHERE scadenza_eliminata='0' ; ";$rs1 =$mysqli->query($query1);

    $num=3//numero colonne
    $lunghezza=$modifica['tot']; //numero di categorie presenti
    echo "<table width=\"1250\" border=\"1\" bordercolor=\"#000000\" cellpadding=\"5\">";
    $x=0;
    while(
    $x<$lunghezza){    echo "<tr>";
    for(
    $i=0;$i<$num;$i++){    $riga $rs1->fetch_assoc();if($x<$lunghezza){    echo "<td>".$riga['nome_scadenza']."  ".$riga['data']."</td>";}$x++;                }
    echo 
    "</tr>";                    }echo "</table>"
    Qualcuno ha una dritta da darmi?
    Grazie in anticipo!!!

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    11,336
    Non hai esposto il problema, hai detto cosa hai, ma non che problema ti da.

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2012
    Messaggi
    178
    In effetti è vero, non ho esposto il problema... Allora nella pagina in pratica si formano tanti cubotti quante sono le categorie attive e fin qui nessun problema, ora devo andare a popolare i cubotti con le scadenze che sono presenti per ogni categoria. Es. ora ho 5 scadenze:
    1-rata 2018-03-04; 2-rata 2018-04-04; 3-assicurazione 2018-03-21; 4-bollo 2018-04-01; ... rata, bollo, assicurazione sono le categorie. Io ho pensato di usare un group by e fin qui il problema è risolto al 50% nel senso che giustamente le raggruppo, ma se nel cubotto dove ho "rata" volessi vedere tutte le scadenze di quella categoria, come potrei fare? Il mio problema è quello...

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2012
    Messaggi
    178

    Provo a spiegarmi...
    Ho due tabelle del db, così composte:

    Categoria Scadenza
    id_categoria id_scadenza
    nome_categoria id_categoria
    categoria_eliminata nome_scadenza
    scadenza_eliminata



    In pratica credo delle categorie e successivamente associo delle scadenze, il mio obiettivo è quello di creare una tabella di 3 colonne x n_righe che sarebbero le categorie che per il momento ricavo con una query usando count(*) e nel where la clausola cat_eliminata = '0' , in pratica (dal codice che ho messo) si creano dei cubi se ho 5 categorie si vanno a creare 5 cubi e così via...

    Fino a qui nessun problema...

    Ora, in ogni cubo io devo andare ad inserire le scadenze raggruppate per categoria es.
    nome_categoria nome_scadenza data
    categoria1 bollo 2018-03-03
    categoria1 bollo 2018-03-08
    categoria1 ciao 2018-03-25
    categoria2 mav 2018-03-08
    categoria3 rata 2018-03-08

    Quindi nel primo cubo avrò bollo, bollo, ciao;
    nel secondo cubo avrò mav;
    nel terzo rata;

    Dal codice che ho messo ottengo solo un nome_scadenza per cubo...
    Ultima modifica di Alberto_P; 30-03-2018 a 12:07

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2012
    Messaggi
    178
    Ciao a tutti, in parte ho risolto il problema riguardo al risultato... ora però inizio con un problema per l'impaginazione...
    Allego il codice:
    codice:
    $query_c = "SELECT * FROM scadenza left join categoria ON scadenza.id_categoria=categoria.id_categoria WHERE scadenza_eliminata = 0 AND categoria_eliminata = 0 ; ";
    $rs_c =$mysqli->query($query_c);
    echo "<table width=\"1250\" border=\"1\" bordercolor=\"#000000\" cellpadding=\"5\">";
    
    while($modifica_c = $rs_c->fetch_assoc() )
    {
     foreach ($modifica_c as $array)
     {			
      if($modifica_c['id_categoria']==$array)
      {			
    echo $modifica_c['nome_categoria']." ".$modifica_c['nome_scadenza']." ".$modifica_c['data']."<br/>"; 
      }
     }
    }
    In pratica dovrei avere come risultato (secondo il db) 4 celle: cella1 3 risultati; cella2 1 risultato; cella3 1 risultato; cella4 1 risultato...

    Qualche consiglio???

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 © 2018 vBulletin Solutions, Inc. All rights reserved.