- Home
- Categorie
- Coding e Sistemistica
- MYSQL e altri Database
- Risultati MySql query su più colonne di una tabella
-
Risultati MySql query su più colonne di una tabella
Salve a tutti, spero possiate aiutarmi
Seleziono una serie di dati da un db, però nella pagina php dove devono essere visualizzati avrei bisogno di non farli apparire in un'unica lunga colonna.
Ho inserito delle tabelle, ma come faccio a dirgli ' mettine 4 nella prima tabella, 4 nella seconda, ecc.. ' ( tanto per fare un esempio..)
Non posso basarmi sugli ID perchè i dati verranno aggiornati spesso.. Non so davvero come fare
Sto cercando invano sui manuali da ore.. vi sarò grata se mi darete una mano
-
Ciao,
un modo potrebbe esser questo:[PHP]
$query="SELECT * FROM tabella";
$result=mysql_query($query);echo "<table>\n";
$i=0;
while ($res=mysql_fetch_assoc($result))
{
if ($i++%4==0) echo "<tr>\n";
echo "<td>".$res['dato']."</td>\n";
if ($i%4==0) echo "</tr>\n";
}
if ($i%4)
{
while ($i++%4!=0) echo "<td> </td>\n";
echo "</tr>\n";
}
echo "</table>\n";
[/PHP]Alessandro
-
Ci provo.
-
[php] <? echo "<table>\n";
$i=0;
while ($res=mysql_fetch_assoc($result))
{
if ($i++%4==0) echo "<tr>\n";
echo "<td>".<a href= "<?php echo $res['fotobig'] ?>" title="<?php echo $res['nome'] ?>" class="bwGal"><img src="<?php echo $res['fotouno'] ?>" class="instant ishadow50 itiltrigth icolorD8A4F8"></a>."</td>\n";
echo "<td>".$res['nome']."</td>\n";
echo "<td>".$res['prezzo']."</td>\n";
if ($i%4==0) echo "</tr>\n";
}
if ($i%4)
{
while ($i++%4!=0) echo "<td> </td>\n";
echo "</tr>\n";
}
echo "</table>\n"; ?>[/php]
Mi da questo errore:Parse error: syntax error, unexpected '<' in sacco.php on line 79
Aiuto!
-
Ho provato anche così:
[php] <? echo "<table>\n";
$i=0;
$foto= <a href="<?php echo $res['fotobig'] ?>" title="<?php echo $res['nome'] ?>" class="bwGal"><img src="<?php echo $res['fotouno'] ?>" class="instant ishadow50 itiltrigth icolorD8A4F8"></a>;
while ($res=mysql_fetch_assoc($result))
{
if ($i++%4==0) echo "<tr>\n";
echo "<td>".$foto."</td>\n";
echo "<td>".$res['nome']."</td>\n";
echo "<td>".$res['prezzo']."</td>\n";
if ($i%4==0) echo "</tr>\n";
}
if ($i%4)
{
while ($i++%4!=0) echo "<td> </td>\n";
echo "</tr>\n";
}
echo "</table>\n"; ?>[/php]Ma mi da lo stesso errore.
-
Ti da errore perchè il codice del link
[PHP]
echo "<td>".<a href= "<?php echo $res['fotobig'] ?>" title="<?php echo $res['nome'] ?>" class="bwGal"><img src="<?php echo $res['fotouno'] ?>" class="instant ishadow50 itiltrigth icolorD8A4F8"></a>."</td>\n";
[/PHP]
è errato. Il codice html o lo metti come testo, quindi tra apici o vigolette, oppure fuori dai tag php:
[PHP]
echo "<td>";
?>
<a href= "<?php echo $res['fotobig'] ?>" title="<?php echo $res['nome'] ?>" class="bwGal"><img src="<?php echo $res['fotouno'] ?>" class="instant ishadow50 itiltrigth icolorD8A4F8"></a>
<?php echo "</td>\n";
[/PHP]
-
Grazie, ora vedo che riesco a combinare.
-
@Magicale said:
Ti da errore perchè il codice del link
[php]
echo "<td>".<a href= "<?php echo $res['fotobig'] ?>" title="<?php echo $res['nome'] ?>" class="bwGal"><img src="<?php echo $res['fotouno'] ?>" class="instant ishadow50 itiltrigth icolorD8A4F8"></a>."</td>\n";
[/php]è errato. Il codice html o lo metti come testo, quindi tra apici o vigolette, oppure fuori dai tag php:
[php]
echo "<td>";
?>
<a href= "<?php echo $res['fotobig'] ?>" title="<?php echo $res['nome'] ?>" class="bwGal"><img src="<?php echo $res['fotouno'] ?>" class="instant ishadow50 itiltrigth icolorD8A4F8"></a>
<?php echo "</td>\n";
[/php]Ma a me quell'url serve che appaia nel td.. come faccio? Se ci metto le virgolette o gli apici mi da sempre quell'errore...
-
Aspeta, scusa, questo l'ho capito e va bene, però sorge un altro problema, fai conto di otto risultati che ci dovrebbero essere me ne appaiono solo due su due colonne.. e tutti gli altri?
Non ci sto capendo nulla.. si era intuito?
Abbi pazienza...
-
Il codice che uso adesso, che mi fa apparire solo due risultati, è questo:
[php] $result=mysql_query($query) or die("Select Failed - collezione");
?>
<br /><br /><br /><? echo "<table>\n";
$i=0;
while ($res=mysql_fetch_assoc($result))
{
if ($i++%4==0) echo "<tr>\n";
echo "<td>";
?>
<a href= "<?php echo $res['fotobig'] ?>" title="<?php echo $res['nome'] ?>" class="bwGal"><img src="<?php echo $res['fotouno'] ?>" class="instant ishadow50 itiltrigth icolorD8A4F8"></a><?php echo "</td>\n";echo "<td>".$res['nome']."</td>\n";
echo "<td>".$res['prezzo']."</td>\n";
if ($i%4==0) echo "</tr>\n";
}
if ($i%4) echo "<tr>\n";
{
while ($i++%4!=0) echo "<td>";
?>
<a href= "<?php echo $res['fotobig'] ?>" title="<?php echo $res['nome'] ?>" class="bwGal"><img src="<?php echo $res['fotouno'] ?>" class="instant ishadow50 itiltrigth icolorD8A4F8"></a><?php echo "</td>\n";echo "<td>".$res['nome']."</td>\n";
echo "<td>".$res['prezzo']."</td>\n";
echo "</tr>\n";
}
echo "</table>\n"; ?> [/php]Che cosa sto sbagliando?
Nella pagina sotto alla prima colonna della table , mi appare solo un quadratino con una x..
-
Grazie mille, alla fine ho capito come funzionava e risolto tutto, mi sei stato di grande aiuto e scusa per gli sos inutili dovuti, credo, alla stanchezza