Inviare E-mail con un ciclo per tabella

IlDottore Pek Davide

Nuovo Utente
25 Lug 2012
15
0
0
Ciao a tutti,
vi volevo chiedere una cosa particolare, devo inviare una email con php che però come oggetto contenga una tabella creata con un for, per intenderci idealmente sarebbe così ma naturalmente non funziona :
PHP:
$query="select * from contratti order by id";
$result= mysql_query($query);
$numfields = mysql_num_fields($result);

questa parte dovrebbe essere l'oggetto dell'email : $oggetto= 
?><br><br><table allign="center" border="2" bordercolor="black" width="850"bgcolor="white"><tr><?
for ($i=0; $i < $numfields; $i++) 
  { 
   echo '<th>'.mysql_field_name($result, $i).'</th>'; 
   }
   echo "</tr>\n";
   
   while ($row = mysql_fetch_row($result)) 
  { 
   echo '<tr><td>'.implode($row,'</td><td>')."</td></tr>\n"; 
  }
echo "</table>\n"; // fino a qui .
come fare :confused: ??
 
Ultima modifica di un moderatore:
non credo tu possa mettere del codice HTML dentro l'oggeto di una mail
forse intendevi il body?
cmq la sintassi è sbagliata, dovrebbe essere piu o meno cosi:

PHP:
$oggetto= "<table>";
for($i=0;$i<10;$i++) {
   $oggetto.="<tr><td>&nbsp;</td></tr>";
}
$oggetto.= "</table>";

- formatta il codice che posti ultime 3 icone sulla barra di formattazione
 
non credo tu possa mettere del codice HTML dentro l'oggeto di una mail
forse intendevi il body?
cmq la sintassi è sbagliata, dovrebbe essere piu o meno cosi:

PHP:
$oggetto= "<table>";
for($i=0;$i<10;$i++) {
   $oggetto.="<tr><td>&nbsp;</td></tr>";
}
$oggetto.= "</table>";

- formatta il codice che posti ultime 3 icone sulla barra di formattazione

Il codice funziona, la stampa perfettamente, ma ho sentito che si può inviare un intero div nel messaggio php, se potessi inviare il div invierei anche la tabella, oppure senza usare tabelle ma inviare cmq il contenuto di una query fatta al db .
 
Dovrebbe funzionare :

PHP:
<?php
$query = "select nome_campo from contratti order by id";
$result = mysql_query($query);

$tabella = "<table>";
while ($row = mysql_fetch_assoc($query)) {
    $tabella.= "<tr>";
    $tabella.= "<td>";
    $tabella.= $row['nome_campo'];
    $tabella.= "</td>";
    $tabella.= "</tr>";
}
$tabella.= "</table>";

$to      = 'mail@sito.com';
$subject = 'Invio dati';
$message = $tabella;

mail($to, $subject, $message);
?>

non ho testato
 

Discussioni simili