-
Lista
Ciao a tutti ^_^
Mi sono messo a lavorare ad una lista di presenti.
Funzionava tutto correttamente ma poi mi era venuta l'idea di poter cliccare in questa lista nel luogo in cui si trovava uno dei presenti in questo modo.
Codice PHP:
echo "</table><table cellpadding=1 cellspacing=0 border=0 width='600' style='BORDER-RIGHT: #E0E0E0 1px solid; PADDING-RIGHT: 7px; BORDER-TOP: #E0E0E0 1px solid; PADDING-LEFT: 7px; BACKGROUND: #000; MARGIN-BOTTOM: 10px; PADDING-BOTTOM: 7px; MARGIN-LEFT: 5px; BORDER-LEFT: #ADADAD 1px solid; WIDTH: 530px; PADDING-TOP: 7px; BORDER-BOTTOM: #ADADAD 1px solid'>";
if ($rs['Is_Invisibile'] == 1) {
echo "<div align=center><tr><td width=200 valign=top><CENTER><b>In Giro</b></CENTER></td></div>";
} else {
$MySql2 = 'SELECT ID,Breve FROM Mappa';
#echo $MySql;
$Result = mysql_query($MySql2);
$rs = mysql_fetch_array($Result);
$NomeMappa = $rs['Breve'];
echo "<div align=center><tr><td width=200 valign=top><CENTER><b><a href='main.php?Dir=".$rs['ID']."' TARGET='_top'>".htmlspecialchars($NomeMappa)."</b></CENTER></a></td></div>";
L'errore ora e che mi indica correttamente il primo presente scrivendomi il luogo che è possibile cliccare e raggiungere ma poi quando passa agli altri inizia a mettere simboletti senza nick e sempre con lo stesso luogo che ha il primo.
Qualcuno riuscirebbe a darmi una mano :crycry: ?
Grazie in anticipo ^_^
-
Ma per fare un elenco con mysql_fetch_array, non devi usare un ciclo while???
Codice PHP:
while($var = mysql_fetch_array($altravar)) {
echo $var['nonso'];
}
-
Si lo usato prima ma non compare in questo codice.
Il problema e che senza il collegamento che voglio fare funziona alla grande ma quando poi quello quella selezione mi da problemi
-
Come già detto da Leo91, prova a sostituire questo pezzo di codice:
Codice PHP:
$rs = mysql_fetch_array($Result);
$NomeMappa = $rs['Breve'];
echo "<div align=center><tr><td width=200 valign=top><CENTER><b><a href='main.php?Dir=".$rs['ID']."' TARGET='_top'>".htmlspecialchars($NomeMappa)."</b></CENTER></a></td></div>";
Con questo:
Codice PHP:
while ($rs = mysql_fetch_array($Result)) {
$NomeMappa = $rs['Breve'];
echo "<div align=center><tr><td width=200 valign=top><CENTER><b><a href='main.php?Dir=".$rs['ID']."' TARGET='_top'>".htmlspecialchars($NomeMappa)."</b></CENTER></a></td></div>";
}
-
Facendo in questo modo mi elenca tutte le stanze cliccabili ma solo un presente di quelli che in realtà ci sono ç_ç
Eccovi il codice completo se può servirvi ^_^
Codice PHP:
<center>
<table cellpadding=0 cellspacing=1 border=0 width="600" style="BORDER-RIGHT: #E0E0E0 1px solid; PADDING-RIGHT: 7px; BORDER-TOP: #E0E0E0 1px solid; PADDING-LEFT: 7px; BACKGROUND: #000; MARGIN-BOTTOM: 10px; PADDING-BOTTOM: 7px; MARGIN-LEFT: 5px; BORDER-LEFT: #ADADAD 1px solid; WIDTH: 530px; PADDING-TOP: 7px; BORDER-BOTTOM: #ADADAD 1px solid">
<?
$MySql = "SELECT Presenti.* From Presenti $Cond WHERE OraUscita = '2037-12-31 00:00:00' ORDER BY Is_Invisibile, StanzaApparente, Nome";
$Result = mysql_query($MySql);
$OldNomeMappa = "";
while ($rs = mysql_fetch_array($Result)) {
$Stanza1 = 0 + $rs["StanzaApparente"];
if (($Stanza1 > 0) && ($Stanza1 != "")) {
if ($rs['Is_Invisibile'] == 1) {
$NomeMappa = "In giro per il Regno";
} else {
$MySql = "SELECT Breve FROM Mappa WHERE ID = ".$Stanza1;
$Result1 = mysql_query($MySql);
if ($rsA = mysql_fetch_array($Result1)) {
$NomeMappa = $rsA["Breve"];
} else {
$NomeMappa = "";
}
$rsA->close;
mysql_free_result($Result1);
}
};
$pg = trim($rs["Nome"]);
# If (strstr($rs["Stanza"], "albergo") !== false) {$NomeMappa = "Albergo";};
If ($rs["Stanza"]."" == "") {$NomeMappa = "In giro per il Regno";};
if ($NomeMappa != $OldNomeMappa) {
echo "</table><table cellpadding=1 cellspacing=0 border=0 width='600' style='BORDER-RIGHT: #E0E0E0 1px solid; PADDING-RIGHT: 7px; BORDER-TOP: #E0E0E0 1px solid; PADDING-LEFT: 7px; BACKGROUND: #000; MARGIN-BOTTOM: 10px; PADDING-BOTTOM: 7px; MARGIN-LEFT: 5px; BORDER-LEFT: #ADADAD 1px solid; WIDTH: 530px; PADDING-TOP: 7px; BORDER-BOTTOM: #ADADAD 1px solid'>";
if ($rs['Is_Invisibile'] == 1) {
echo "<div align=center><tr><td width=200 valign=top><CENTER><b>In Giro per il Regno</b></CENTER></td></div>";
} else {
$MySql2 = 'SELECT ID,Breve FROM Mappa';
#echo $MySql;
$Result = mysql_query($MySql2);
while ($rs = mysql_fetch_array($Result)) {
$NomeMappa = $rs['Breve'];
echo "<div align=center><tr><td width=200 valign=top><CENTER><b><a href='main.php?Dir=".$rs['ID']."' TARGET='_top'>".htmlspecialchars($NomeMappa)."</b></CENTER></a></td></div>";
}
} else {
echo "<tr><td width=200></td>";
};
$OldNomeMappa = $NomeMappa;
$MySql = "SELECT Personaggio.*, Razza.Razza, Razza.URLImg AS URLImgRazza, Gilda.Gilda, Gilda.URLImg AS URLImgGilda
FROM Personaggio
LEFT JOIN Razza
ON Personaggio.IDRazza = Razza.IDRazza
LEFT JOIN Gilda
ON Personaggio.IDGilda = Gilda.IDGilda
WHERE Nome = '$pg'";
$result = mysql_query($MySql);
#echo $MySql;
$rs = mysql_fetch_array($result);
$UrlImgGilda = trim($rs["URLImgGilda"]."");
echo "<td align=left>";
echo "<a href='scheda.php?pg=".urlencode($pg)."' target='palestra'>";
echo "<img border=0 src=\"img/testamini".strtolower($rs["Sesso"]).".gif\"> ";
echo "<img border=0 src=\"img/stemmi/".$UrlImgGilda."\"> ";
echo htmlspecialchars($pg);
echo "</a>";
echo "</td></tr>\n";
}
$rs->close;
mysql_free_result($Result);
?>
</table>
</center>
Ora mi indica tutte le stanze ma solo un presente, se elimino quella traccia senza mettere il collegamento all'ID funziona alla perfezione. Però se volessi fare il collegamento nel luogo indicato come dovrei fare? grassie ancora ^_^