Newsgroup: it.comp.www.php
Titolo: news in verticale

Ciao a tutti,
Ho costruito uno script per inserire le news,funziona tutto perfettamente
però io le vorrei visualizzare in verticale,al posto di visualizzarle in
orizzantale;
vi posto il codice:
<?php
include("Conf.php");
$nome_tabella = "News";
$query  = "SELECT * FROM $nome_tabella order by Data desc";
$risultato = mysql_db_query($db_nome,$query)or die(mysql_error());
$percorso = "C:\Programmi\EasyPhp\www\images";
while($rigo = mysql_fetch_array($risultato)){
$Id = $rigo["id"];
$Data = $rigo["Data"];
$Titolo = $rigo["Titolo"];
$Commento = $rigo["Commenti"];
$Foto_piccola = $rigo["foto_piccola"];
$Foto_grande = $rigo["foto_grande"];
echo <<<EOD
<table width="340" border="1" bordercolor="#0000FF" bgcolor="#FFFFFF">
  <tr>
    <td width="245" bordercolor="#0033CC" bgcolor="#000099"><font
color="#FFFFFF">$Titolo</font></td>
    <td width="79" bordercolor="#0033CC" bgcolor="#000099"><font
color="#FFFFFF">$Data</font></td>
  </tr>
  <tr bordercolor="#FFFFFF">
    <td colspan="2" bgcolor="#FFFFFF"><font
color="#000000">$Commento</font></td>
  </tr>
  <tr bordercolor="#FFFFFF" bgcolor="#FFFFFF">
    <td colspan="2">
      <div align="right"></div></td>
  </tr>
  <tr bgcolor="#000099">
    <td colspan="2" bordercolor="#0033CC">
    <div align="left"><font color="#FFFFFF"><a href="$Foto_grande"
target="_blank"><img src="$Foto_piccola"</font></div></td>
  </tr>
</table>
EOD;
}
?>
Ciao

 visualizzarle in orizzantale;
Definisci in verticale.
E' un problema di HTML non di PHP.
-- 
I am what I am, I do what I can
Sei un newbie? Leggi questo 
http://url.repository.biz/go/1
Inviare email con allegati? 
http://url.repository.biz/go/1Z
Cerchi un programmatore PHP/MySQL? 
http://url.repository.biz/go/1Y

 E' un problema di HTML non di PHP.
Setec Astronomy,posso postare in it.lavoro.professionisti.webmaster?il
codice php andava bene cmq?
ciao

 > Definisci in verticale.
 Forse mi sono spiegato male prima,vi faccio un sempio,devo visualizzare due
record in due colonne affiancate io ho fatto cosi:
<?php
include("Conf.php");
$nome_tabella = "News";
$query  = "SELECT * FROM $nome_tabella  order by Data desc LIMIT 0,2";
$risultato = mysql_db_query($db_nome,$query)or die(mysql_error());
$percorso = "C:\Programmi\EasyPhp\www\images";
while($rigo = mysql_fetch_array($risultato)){
$Id = $rigo["id"];
$Data = $rigo["Data"];
echo <<<EOD
<table width="200" border="1">
  <td> $Titolo </td>
    </table
EOD;
}
?>
però cosi vedo un  record sopra e l'altro sotto!!!

Come gią detto, il tuo non č tanto un problema di php quanto di html.
Devi prima di tutto decidere come impostare il layout, poi scrivi lo script
che ti realizzi il layout html che hai scelto.
Se per verticale, intendi una news (con tutte le info del caso) ogni riga,
il tuo layout sarą:
+--------+
| news 1 |
+--------+
| news 2 |
+--------+
| news 3 |
+--------+
| news 4 |
+--------+
ossia:
echo "<table>";
while(/*ciclo sulle news*/){
    echo "<tr>";
    echo "<td>" . DATI . "</td>";
    echo "</tr>";
}
echo "</table>";
Come vedi si tratta solo di decidere come metterle.
Se non vuoi la tabella, puoi anche fare cosģ:
while(/*ciclo sulle news*/){
    echo "<p>";
    echo DATI;
    echo "</p>";
}
Ciao
Marco

 echo "</table>";
Cosi è uguale al mio script,le mette una sotto l'altra,io le voglio affianco
Comunque adesso faccio delle prove in base a quello che mi hai detto.
Ciao e grazie

 Comunque adesso faccio delle prove in base a quello che mi hai detto.
Allora non ho capito. Come le vuoi?
Magari fai un "disegnino".
Ciao
Marco

 ha scritto nel messaggio
news:bvu1qn$8os$1...@newsreader.mailgate.org...

Dunque,nella tabella news ho 2 campi;id e articolo;inserisco il primo
record(id = 1;articolo= news1),poi inserisco il secondo record(id=2;
articolo = news2);
Dunque la tabella devo vederla cosi:
+-----+ +------+
|news1|   news2|         e non come il tuo disegno
+-----+ +------+
+--------+
| news 1 |
+--------+
| news 2 |
+--------+
Capito Marco?
Ciao e ancora grazie

 +-----+ +------+
Ah, ne devi mettere 2 su ogni riga.
Tutto qui?!  ;-)
echo "<table>\n";
$col = 1;
while(/*ciclo sulle news*/){
    $news = "<td>" . DATI . "</td>";
    if($col == 1){
        $news = "<tr>" . $news;
        $col = 2;
    }
    else{
        $news = $news . "</tr>\n";
        $col = 1;
    }
}
echo "</table>\n";
Spero che sia chiaro.
Giusto un appunto: devi chiudere </tr> nel caso in cui le news da
visualizzare siano dispari.
Ciao
Marco


il ciclo while è questo,non so come applicarlo al tuo codice,scusa ma sono
un newbie
include("Conf.php");
$nome_tabella = "News";
$query  = "SELECT * FROM $nome_tabella order by Data desc LIMIT 0,2";
$risultato = mysql_db_query($db_nome,$query)or die(mysql_error());
$percorso = "C:\Programmi\EasyPhp\www\images";
$col = 1;
while($rigo = mysql_fetch_array($risultato)){
$Id = $rigo["id"];
$Data = $rigo["Data"];
$Titolo = $rigo["Titolo"];
$Commento = $rigo["Commenti"];
$Foto_piccola = $rigo["foto_piccola"];
$Foto_grande = $rigo["foto_grande"];
ciao e ancora grazie

 $Foto_grande = $rigo["foto_grande"];
Mmm, c'č un pň di nebbia.
Innanzitutto, nella query hai inserito LIMIT 0,2.
Questo significa che la query ti restituisce i primi 2 elementi.
Quindi, non ti serve a molto fare il ciclo while, tanto piů di 2 non sono.
Ma immaginiamo che tu non metta il LIMIT, il codice sarebbe quello che ti ho
detto:
    $news = "<td>" . DATI . "</td>";
dove al posto di DATI inserisci tutte le informazioni che vuoi visualizzare,
ad esempio:
DATI --> $data . "<br>" . $titolo . "<br>" . $commento;
Infine, mi ripeto, nel mio codice del post passato, devi aggiungere la
gestione delle news in numero dispari, per garantire un codice html valido.
Ciao
Marco


Io ho fatto cosi sembra che vada adesso
<?php
include("Conf.php");
$nome_tabella = "News";
$query  = "SELECT * FROM $nome_tabella order by Data desc ";
$risultato = mysql_db_query($db_nome,$query)or die(mysql_error());
$percorso = "C:\Programmi\EasyPhp\www\images";
echo "<table>\n";
echo "<TR>";
$col = 1;
while($rigo = mysql_fetch_array($risultato)){
$Id = $rigo["id"];
$Data = $rigo["Data"];
$Titolo = $rigo["Titolo"];
$Commento = $rigo["Commenti"];
$Foto_piccola = $rigo["foto_piccola"];
$Foto_grande = $rigo["foto_grande"];
   echo "<TD>";
echo "<TABLE><TR><TD>Titolo News</TD></TR>";
echo "<TR><TD> .$Titolo.</TD></TR>";
echo "</TD></TR></TABLE>";
}
echo "<TR>";
echo "</table>\n";
?>
perň devo visualizzare sempre gli ultimi 2 record inseriti(ci devo mettere
il limit?)

 il limit?)
In questo caso sì.
Ma è inutile fare il while a questo punto.
Le possibilità tanto sono 3:
- nessun record
- 1 record
- 2 record
Basta che conti i record restituiti e poi prepari la tabella.
E' chiaro che la soluzione con il while è scalabile: basta modificare il
LIMIT e basta.
Ciao
Marco

 ha scritto nel messaggio
news:c0006k$kcr$1...@newsreader.mailgate.org...

Ti ringrazio Marco,adesso provo quello che mi hai detto tu ,poi ti faccio
sapere
Ancora grazie,ciao