Originariamente inviato da seokey
così stampa tutto e non va bene...

però perché me li stampa doppi?
Per via di un errore molto banale che su questo forum capita con frequenza stupefacente.

Questo pezzo di codice:
Codice PHP:
while ($row mysql_fetch_array($result)) {
    
$id $row['idarg'];
    
$titolo $row['titolo'];
    
$testo =  $row['testo'];

esegue un ciclo tante volte quante sono i record restituiti dalla query, ma ogni volta registra i valori NELLE STESSE VARIABILI sovrascrivendole quindi ad ogni giro. Poi tu esegui un ciclo for e stampi questo valore tutte le volte.

Se faccio cosi':
Codice PHP:
$id 1;
$id 2;
$id 3
alla fine quanto vale $id?

Non puoi registrare piu' valori in una semplice variabile, devi usare un array. Esempio:

Codice PHP:
$result = array()
while (
$row mysql_fetch_array($result)) {
    
$result[] = array(
        
'id' $row['idarg'];
        
'titolo' $row['titolo'];
        
'testo' =  $row['testo'];
    );

e per stampare i contenuti usi questa forma:
Codice PHP:
<table>
<?php foreach ( $result as $record ): ?>
<tr>
<td><?php echo $record['id']; ?></td>
<td><?php echo $record['titolo']; ?></td>
<td><?php echo $record['testo']; ?></td>
</tr>
<?php endforeach; ?>
(ovviamente il markup HTML e' solo un esempio).