|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: May 2004
Messaggi: 42
|
incolonnare i prodotti con php
Ciao a tutti, vi spiego il mio problema:
sto facendo un sito dove nella home page ce una vetrina con i prodotti, questi sono richiamati da un database tramite una while e fino qui tutto bene. Facendo questa while i prodotti si dispongono uno sotto l'altro, io invece, voglio che si mettono uno difianco all'altro facendo cosi due colonne, ma come faccio? fatemi sapere. |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Oct 2004
Città: Acireale
Messaggi: 447
|
Uno a fianco all'altro facendo così due colonne cosa vuol dire?!??!?!
Comunque, se ho capito bene, ti consiglio di contare il numero di righe della tua query ( esiste un modo per farlo ) e poi creare una tabella con n colonne ( dove n = numero righe della query ) e 1 riga. Spero di averti aiutato. Ciao |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
$n = 0;
Fino a che ci sono prodotti: { if(n == 0) Stampo il codice html della prima colonna; else Stampo il codice html della seconda colonna; $n = (n + 1) % 2; } |
![]() |
![]() |
![]() |
#4 |
Member
Iscritto dal: May 2004
Messaggi: 42
|
incolonnare
Ciao, mi hanno detto di usare qusto:
$i = 0; WHILE ($row = mysql_fetch_assoc($query)) { $i % 2 == 0 ? $riga = "<tr><td>$row[record]</td>" : $riga="<td>$row[record]</td></tr>"; echo $riga ; $i++; } Ho provato a modificare il mio codice, ma mi da errore, come faccio a modificarlo in questo modo: Codice che ho scritto: <?php error_reporting (0); $conn = @mysql_connect("localhost","root","") or die("connessione fallita"); @mysql_select_db("computergratis") or die ("connessione fallita5"); $sql = "SELECT * FROM vetrina"; $risultato = @mysql_query($sql) or die ("query fallita"); print "<br><br><table align=center width=700 bordercolor=black> "; $i = 0; while ($linea = mysql_fetch_array($risultato)) { print $i % 2 == 0 ? $riga = "<tr> <td><a target=centro href=\"vetrina.php?id=$linea[idvetrina]\"><img border=0 width=70 height=70 src=".$linea['foto']."></td>" :$riga="<td>"$linea['foto']"</td></tr>"; print "<td><font size=2 face=courier><b>".$linea['nomeprodotto']."</b></font></td>" :$linea="<td>"$linea['nomeprodotto']"</td></tr>"; print "<td><font size=1 face=arial>".$linea['descrizione']."</font></td>"; print "<td><font size=2 face=arial back><b>".$linea['prezzo']."</b></font></td>"; echo $linea ; $i++; } print "</tr></table>"; ?> Sono proprio impedita ![]() |
![]() |
![]() |
![]() |
#5 |
Member
Iscritto dal: May 2004
Messaggi: 42
|
incolonnare
Ho provato a scrivere come mi hai detto tu:
<?php error_reporting (0); $conn = @mysql_connect("localhost","root","") or die("connessione fallita"); @mysql_select_db("computergratis") or die ("connessione fallita5"); $sql = "SELECT * FROM vetrina"; $risultato = @mysql_query($sql) or die ("query fallita"); print "<br><br><table align=center width=700 bordercolor=black> "; $n = 0; while ($linea = mysql_fetch_array($risultato)) { if(n == 0) { print "<tr> <td><a target=centro href=\"vetrina.php?id=$linea[idvetrina]\"><img border=0 width=70 height=70 src=".$linea['foto']."></td>"; print "<td><font size=2 face=courier><b>".$linea['nomeprodotto']."</b></font></td>"; print "<td><font size=1 face=arial>".$linea['descrizione']."</font></td>"; print "<td><font size=2 face=arial back><b>".$linea['prezzo']."</b></font></td>"; else{ print "<td><a target=centro href=\"vetrina.php?id=$linea[idvetrina]\"><img border=0 width=70 height=70 src=".$linea['foto']."></td>"; print "<td><font size=2 face=courier><b>".$linea['nomeprodotto']."</b></font></td>"; print "<td><font size=1 face=arial>".$linea['descrizione']."</font></td>"; print "<td><font size=2 face=arial back><b>".$linea['prezzo']."</b></font></td>"; $n = (n + 1) % 2; } } } print "</tr></table>"; ?> mi da errore nella else........ |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Devi chiudere la parentesi graffa prima dell'else...
La soluzione che tia vevano dato è simile alla mia, ma prevedeva di stampare tutto su una sola riga... |
![]() |
![]() |
![]() |
#7 |
Member
Iscritto dal: May 2004
Messaggi: 42
|
incolonnare
Ciao per la parentesi avevi ragione, il problema è che continuano a essere uno sotto l'altro, come mai, ho dimenticato qualcosa:
<?php error_reporting (0); $conn = @mysql_connect("localhost","root","") or die("connessione fallita"); @mysql_select_db("computergratis") or die ("connessione fallita5"); $sql = "SELECT * FROM vetrina"; $risultato = @mysql_query($sql) or die ("query fallita"); print "<br><br><table align=center width=700 bordercolor=black> "; $n = 0; while ($linea = mysql_fetch_array($risultato)) { if(n == 0) { print "<tr>"; print "<td><a target=centro href=\"vetrina.php?id=$linea[idvetrina]\"><img border=0 width=70 height=70 src=".$linea['foto']."></td>"; print "<td><font size=2 face=courier><b>".$linea['nomeprodotto']."</b></font></td>"; print "<td><font size=1 face=arial>".$linea['descrizione']."</font></td>"; print "<td><font size=2 face=arial back><b>".$linea['prezzo']."</b></font></td>"; } else{ print "<td><a target=centro href=\"vetrina.php?id=$linea[idvetrina]\"><img border=0 width=70 height=70 src=".$linea['foto']."></td>"; print "<td><font size=2 face=courier><b>".$linea['nomeprodotto']."</b></font></td>"; print "<td><font size=1 face=arial>".$linea['descrizione']."</font></td>"; print "<td><font size=2 face=arial back><b>".$linea['prezzo']."</b></font></td>"; } $n = (n + 1) % 2; } print "</tr></table>"; ?> Spero che hai voglia ancora di aiutarmi. Ciao e Grazie ![]() |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Metti un </tr> alla fine del codice HTML nel ramo else...e toglilo da sotto...
|
![]() |
![]() |
![]() |
#9 |
Member
Iscritto dal: May 2004
Messaggi: 42
|
incolonnare
Ti ringrazio mille per l'aiuto, ho risolto il problema cosi:
<?php error_reporting (0); $conn = @mysql_connect("localhost","root","") or die("connessione fallita"); @mysql_select_db("computergratis") or die ("connessione fallita5"); $sql = "SELECT * FROM vetrina"; $risultato = @mysql_query($sql) or die ("query fallita"); print "<br><br><table align=center width=700 bordercolor=black><tr style=width:180px;height:20;background-color:#B7FFB7; padding-left:60px;padding-right:60px;>"; $n = 1; while ($linea = mysql_fetch_array($risultato)) { print "<td ><a target=centro href=\"vetrina.php?id=$linea[idvetrina]\"><img border=0 width=70 height=70 src=".$linea['foto']."></td>"; print "<td><font size=2 face=courier><b>".$linea['nomeprodotto']."</b></font></td>"; if ($n % 2 == 0) echo "</tr><tr style=width:180px;height:20;background-color:#B7FFB7;padding-left:60px;padding-right:60px;>\n"; $n++; } print "</tr></table>"; ?> Grazie mille per l'aiuto. Ciao alla prossima ![]() |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 21:05.