chi mi aiuta a scrivere il ciclo?

  • Creatore Discussione Creatore Discussione thenax
  • Data di inizio Data di inizio

thenax

Nuovo Utente
8 Apr 2007
17
0
0
in una pagina php ho questo codice inserito in un ciclo che si ripete sin quando finisce l'elenco di tutti le 'cittaX'

<?php <div align="justify"><?php echo $row_rs_itin_an_filtr['cittaX']; ?> </div>

<?php <div align="justify"><?php echo $row_rs_itin_an_filtr['monumento']; ?> </div>

pero' con questo codice la medesima città viene ripetuta per ogni singolo monumento cioè

ASSISI
eremo delle carceri
ASSISI
Basilica
ASSISI
S.Chiara
PERUGIA
Fontana
BEVAGNA
Teatro Romano

come si fa il ciclo per ottenere qualcosa di simile a quanto riportato qui sotto? (cioè come si fa il ciclo dicendo di scrivere i monumenti tutti di seguito sin quando il valore cittaX non cambia?)

ASSISI
eremo delle carceri
Basilica
S.Chiara
PERUGIA
Fontana
BEVAGNA
Teatro Romano
 
Mi posti per cortesia il codice della query e del ciclo che effettui attualmente?
 
In pratica ho questa query

$query_rs_itin_an_filtr = sprintf("SELECT i.itinerarioanaliticoID, i.itinerario, i.giornoX, i.cittaX, i.profilocittaX, g.giornocardinale, m.monumento, FROM tbl_itinerarianalitici i LEFT JOIN tbl_giornicardinali g ON i.giornoX = g.giornoID LEFT JOIN tbl_monumenti m ON i.itinerarioanaliticoID = m.itinID WHERE giornoX = $_GET['giornoX'] AND itinerario = $_GET['nomeitinerario'] ORDER BY giornoX"……

$rs_itin_an_filtr = mysql_query($query_rs_itin_an_filtr, $server) or die(mysql_error());
$row_rs_itin_an_filtr = mysql_fetch_assoc($rs_itin_an_filtr);
$totalRows_rs_itin_an_filtr = mysql_num_rows($rs_itin_an_filtr);

E a seguire il codice che stampa la pagina (per ogni itinerario vi è l’intestazione con scritto primo giorno o secondo giorno, ecc. e sotto vengono stampate le città con il loro profilo, i monumenti, le curiosità e gli appunti di viaggio, se ce ne sono.

e questo è il ciclo che mi darebbe il risultato che vedi su www.itinerarinelmondo.net/itinerari_dettaglibackup.php?nomeitinerario=2&giornoX=2
che mi fa vedere:

Cosa vedere

Porta Urbica

Curiosità

Da porta dell'Arce, in cima a Via Torre Belvedere, è possibile affacciarsi sul Belvedere da dove godrete il panorama sulla pianura.

Porta Venere

Curiosità

Da porta dell'Arce, in cima a Via Torre Belvedere, è possibile affacciarsi sul Belvedere da dove godrete il panorama sulla pianura.

invece di farmi vedere:

Cosa vedere

Porta Urbica

Porta Venere

Curiosità

Da porta dell'Arce, in cima a Via Torre Belvedere, è possibile affacciarsi sul Belvedere da dove godrete il panorama sulla pianura.
 
Alla fine ho adottato questa soluzione molto piu' semplice e soprattutto funzionante!

PHP:
<div align="justify">
                <p> <?php
                $sql_mon = "SELECT monumento, descrizione, itinID FROM tbl_monumenti WHERE $itin = itinID";
                $query_mon = mysql_query($sql_mon);
                while (list($monumento) = mysql_fetch_row($query_mon))
                {
                echo "$monumento: ";
}
 ?> </p>
                </div>

ma se ora volessi aggiungere anche la descrizione del monumento subito dopo i ":" come va modificato il codice? grazie mille!
 
Potrebbe essere un problema di ORDER BY: hai provato a gestirlo?

Poi vedo che usi le LEFT JOIN e non ricordo se MySQL le supprta; ti consiglio di usare le modalità tradizionali per la query... ove possibil, naturalmente!
 
Potrebbe essere un problema di ORDER BY: hai provato a gestirlo?

Poi vedo che usi le LEFT JOIN e non ricordo se MySQL le supprta; ti consiglio di usare le modalità tradizionali per la query... ove possibil, naturalmente!

il problema della query ora è risolto, ora me ne rimane ancora uno (vedi post sopra il tuo!)
 

Discussioni simili