- Home
- Categorie
- Coding e Sistemistica
- PHP
- aiutatemi a trovare la soluzione per questo ciclo....
-
oops ho sbagliato.....il codice della pagina è questo qui sotto. così funzionerebbe bene a parte il fatto che il punto dell'elenco puntato, profilocittaX e il titolo 'Cosa vedere' vengono ripetuti più volte ma la città no....
come faccio ad eliminare questo problema??
[php]
<?php if ($totalRows_rs_itin_an_filtr > 0) { // ?>
<?php
$prec = '0';
$citta_precedente="";
$cercag = isset($_REQUEST['giornoX']) ? $_REQUEST['giornoX'] : '';
do {
$oggi = $row_rs_itin_an_filtr['giornoX'];
$oggicard = $row_rs_itin_an_filtr['giornocardinale'];
if (($oggi != $cercag) && ($cercag != ''))
continue;
if ($prec != $oggi)
{
$prec = $oggi;
print <<<GIORNOCARD
<h5 align="center"><class="bodyText Stile61">$oggicard</h5>
GIORNOCARD;
}
?>
<ul>
<li>
<h1 align="left" class="Stile59 bodyText"><strong><?php if ($citta_precedente != $row_rs_itin_an_filtr['cittaX']) echo $row_rs_itin_an_filtr['cittaX']; ?> </strong></h1>
</li>
</ul>
<table width="727" height="131" border="0" cellpadding="3" cellspacing="0">
<tr>
<td width="727"><div align="justify"><span class="bodyText"><?php echo $row_rs_itin_an_filtr['profilocittaX']; ?></span></div>
<br />
<div align="center"><span class="bodyText Stile59"><img src="<?php echo $row_rs_itin_an_filtr['fotocittaX']; ?>" hspace="5" /></span></div></td>
</tr>
</table>
<h6 align="left" class="bodyText Stile59"></h6>
<div align="justify"></div>
<h5 align="left" class="bodyText Stile58 Stile60">
Cosa vedere </h5>
<div align="justify">
<p> <?php $row_rs_itin_an_filtr['monumento'] =
preg_replace("/([a-zA-Z]+://[a-z0-9_.-]+".
"[a-z]{2,6}[a-zA-Z0-9/*_-?&%=,.]+)/", '<a href="$1" style="text-decoration:
underline;background:none;display:inline;padding:0;margin:0;font-size:
12px;" target="_blank">sito ufficiale</a>', $row_rs_itin_an_filtr['monumento']);
echo $row_rs_itin_an_filtr['monumento'];
?> </p>
</div>
<?php if (($row_rs_itin_an_filtr['curiositacittaX'] != "")) { // Show if recordset not empty ?>
<h5 align="left" class="bodyText Stile58"><br />
<span class="bodyText Stile58 Stile60">Curiosità</span></h5>
<div align="justify">
<p><?php echo $row_rs_itin_an_filtr['curiositacittaX']; ?> <br />
</p>
</div>
<?php } // Show if recordset not empty ?>
<?php if (($row_rs_itin_an_filtr['appunti'] != "")) { // Show if recordset not empty ?>
<h5 align="left" class="bodyText Stile58"><br />
<span class="bodyText Stile58 Stile60">Diario di Viaggio</span></h5>
<div align="justify">
<p><?php echo $row_rs_itin_an_filtr['appunti']; ?> <br />
</p>
</div>
<?php } // Show if recordset not empty ?><br />
<?php $citta_precedente= $row_rs_itin_an_filtr['cittaX']; ?>
<?php } while ($row_rs_itin_an_filtr = mysql_fetch_assoc($rs_itin_an_filtr)); ?>
<br />
<em><strong>Esplora gli altri giorni</strong></em>
<table>
<tr>
<?php
$giorni = array('1','2','3','4','5','6','7','8','9','10','11','12');
$barra = '';
$ultimog = $row_maxgiorno['MAX(giornoX)'];
$questog = $_GET['giornoX'];
$itin = $_GET['nomeitinerario'];
foreach($giorni as $giorno)
{
if ($giorno == $questog)
$barra .= <<<SENZAURL
<td><strong>$giorno</strong><td>
SENZAURL;
else
if ($giorno <= $ultimog)
$barra .= <<<CONURL
<td><a href="itinerari_dettagli.php?nomeitinerario=$itin&giornoX=$giorno">$giorno</a></td>
CONURL;
}
print $barra ;
?>
</tr>
</table>
<?php } // Show if recordset not empty ?>
[/php]
-
Prova così....
Purtroppo se non vedo come da a video la pagina non riesco a rendermi conto.
[PHP]
<?php if ($totalRows_rs_itin_an_filtr > 0) { // ?>
<?php
$prec = '0';
$citta_precedente="";
$cercag = isset($_REQUEST['giornoX']) ? $_REQUEST['giornoX'] : '';
do {
$oggi = $row_rs_itin_an_filtr['giornoX'];
$oggicard = $row_rs_itin_an_filtr['giornocardinale'];
if (($oggi != $cercag) && ($cercag != ''))
continue;
if ($prec != $oggi)
{
$prec = $oggi;
print <<<GIORNOCARD
<h5 align="center"><class="bodyText Stile61">$oggicard</h5>
GIORNOCARD;}
?>
<?php if ($citta_precedente != $row_rs_itin_an_filtr['cittaX']){?>
<ul>
<li>
<h1 align="left" class="Stile59 bodyText"><strong> <?php echo $row_rs_itin_an_filtr['cittaX']; ?> </strong></h1>
</li>
</ul>
<table width="727" height="131" border="0" cellpadding="3" cellspacing="0">
<tr>
<td width="727"><div align="justify"><span class="bodyText"><?php echo $row_rs_itin_an_filtr['profilocittaX']; ?></span></div>
<br />
<div align="center"><span class="bodyText Stile59"><img src="<?php echo $row_rs_itin_an_filtr['fotocittaX']; ?>" hspace="5" /></span></div></td>
</tr>
</table>
<h6 align="left" class="bodyText Stile59"></h6>
<div align="justify"></div>
<h5 align="left" class="bodyText Stile58 Stile60">
Cosa vedere </h5>
<?php } ?>
<div align="justify">
<p> <?php $row_rs_itin_an_filtr['monumento'] =
preg_replace("/([a-zA-Z]+://[a-z0-9_.-]+".
"[a-z]{2,6}[a-zA-Z0-9/*_-?&%=,.]+)/", '<a href="$1" style="text-decoration:
underline;background:none;display:inline;padding:0;margin:0;font-size:
12px;" target="_blank">sito ufficiale</a>', $row_rs_itin_an_filtr['monumento']);
echo $row_rs_itin_an_filtr['monumento'];
?> </p>
</div>
<?php if (($row_rs_itin_an_filtr['curiositacittaX'] != "")) { // Show if recordset not empty ?>
<h5 align="left" class="bodyText Stile58"><br />
<span class="bodyText Stile58 Stile60">Curiosità</span></h5>
<div align="justify">
<p><?php echo $row_rs_itin_an_filtr['curiositacittaX']; ?> <br />
</p>
</div>
<?php } // Show if recordset not empty ?>
<?php if (($row_rs_itin_an_filtr['appunti'] != "")) { // Show if recordset not empty ?>
<h5 align="left" class="bodyText Stile58"><br />
<span class="bodyText Stile58 Stile60">Diario di Viaggio</span></h5>
<div align="justify">
<p><?php echo $row_rs_itin_an_filtr['appunti']; ?> <br />
</p>
</div>
<?php } // Show if recordset not empty ?><br />
<?php $citta_precedente= $row_rs_itin_an_filtr['cittaX']; ?>
<?php } while ($row_rs_itin_an_filtr = mysql_fetch_assoc($rs_itin_an_filtr)); ?>
<br />
<em><strong>Esplora gli altri giorni</strong></em>
<table>
<tr>
<?php
$giorni = array('1','2','3','4','5','6','7','8','9','10','11','12');
$barra = '';
$ultimog = $row_maxgiorno['MAX(giornoX)'];
$questog = $_GET['giornoX'];
$itin = $_GET['nomeitinerario'];
foreach($giorni as $giorno)
{
if ($giorno == $questog)
$barra .= <<<SENZAURL
<td><strong>$giorno</strong><td>
SENZAURL;else
if ($giorno <= $ultimog)
$barra .= <<<CONURL
<td><a href="itinerari_dettagli.php?nomeitinerario=$itin&giornoX=$giorno">$giorno</a></td>
CONURL;}
print $barra ;
?>
</tr>
</table>
<?php } // Show if recordset not empty ?>
[/PHP]
-
@Siremar said:
Prova così....
Purtroppo se non vedo come da a video la pagina non riesco a rendermi conto.
[php]
<?php if ($citta_precedente != $row_rs_itin_an_filtr['cittaX']){?>[/php]
mi dà "Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in" in questa riga....
ad ogni modo puoi renderti conto della videata su itinerarinelmondo.net/itinerari_dettaglibackup.php?nomeitinerario=2&giornoX=2
-
nessuno ha qualche idea?
-
Sostituisci la riga:
[PHP]
if (($oggi != $cercag) && ($cercag != ''))
continue;
[/PHP]con questa
[PHP]
if (($oggi != $cercag) && ($cercag != '')){
continue;
}
[/PHP]Il Ciclo foreach alla fine con questo
[PHP]
foreach($giorni as $giorno){
if ($giorno == $questog){
$barra .= <<<SENZAURL
<td><strong>$giorno</strong><td>
SENZAURL;
} elseif ($giorno <= $ultimog){
$barra .= <<<CONURL
<td><a href="itinerari_dettagli.php?nomeitinerario=$itin&giornoX=$giorno">$giorno</a></td>
CONURL;
}
print $barra ;
}
[/PHP]Prova così...io e te abbiamo due modi molto diversi di programmare quindi meglio di così non riesco a fare.
Comunque l'errore non credo sia in quella riga...la mi pare tutto corretto
-
@Siremar said:
Sostituisci la riga:
[php]
if (($oggi != $cercag) && ($cercag != ''))
continue;
[/php]con questa[php]
if (($oggi != $cercag) && ($cercag != '')){
continue;
}
[/php]
Il Ciclo foreach alla fine con questo
[php]
foreach($giorni as $giorno){
if ($giorno == $questog){
$barra .= <<<SENZAURL
<td><strong>$giorno</strong><td>
SENZAURL;
} elseif ($giorno <= $ultimog){
$barra .= <<<CONURL
<td><a href="itinerari_dettagli.php?nomeitinerario=$itin&giornoX=$giorno">$giorno</a></td>
CONURL;
}
print $barra ;
}
[/php]Prova così...io e te abbiamo due modi molto diversi di programmare quindi meglio di così non riesco a fare.Comunque l'errore non credo sia in quella riga...la mi pare tutto corretto
ma questo cambiamento cosa andrebbe ad influenzare? cosa cambia rispetto a prima??
-
@Samyorn said:
Ciao thenax
puoi fare un primo ciclo che ti estrapola solo il nome della città ed a questo annidi un altro ciclo che come condizione WHERE avrà il nome della città passante nel ciclo principale:
[php]$sql = "SELECT citta FROM table";
$query = mysql_query($sql);while (list($citta)=mysql_fetch_row($query))
{
echo $citta;
$sql_mon="SELECT monumento FROM table1 WHERE citta='$citta'";
$query_mon=mysql_query($sql_mon);
while (list($monumento)=mysql_fetch_row($query_mon))
{
echo $monumento;
}
}[/php]Un qualcosa del genereAlla fine ho adottato la tua 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>
[/php]se ora volessi aggiungere la descrizione del monumento subito dopo i ":" come va modificato il codice? grazie mille!
-
[php]$sql = "SELECT citta FROM table";
$query = mysql_query($sql);while (list($citta)=mysql_fetch_row($query))
{
echo $citta;
$sql_mon="SELECT monumento, descrizione FROM table1 WHERE citta='$citta'";
$query_mon=mysql_query($sql_mon);
while (list($monumento, $descrizione)=mysql_fetch_row($query_mon))
{
echo $monumento." :".$descrizione;
}
}
[/php]
-
grazie mille!
-
de nada