Prima di tutto sembra un po' strano avere nome_utente2, ora2, ecc. per la seconda domanda. È davvero così che è impostato nel tuo DB?
Ad ogni modo, ecco un modo per generare grafici dall'interno dei tuoi loop PHP.
echo('<div id="placeholder"></div>');
echo('<script>');
while($info = mysql_fetch_array( $data ))
{
$user = $info['user_name']; //It’s the name of user analyzed at the moment
/*
This query extract the first ten more recents values (order by time DESC)
The data retrieved by the query are used to paint the 1° chart for emails sent by the user
but I don't know how to do it recursively
*/
$query = "SELECT user_name,mail_sent,mail_received,time FROM table1 WHERE user_name='$user' ORDER BY time DESC LIMIT 0,10";
$result = mysql_query($query);
$dataset1 = new Array();
while($row = mysql_fetch_assoc($result))
{
$row['time']=$row['time']*1000; //The time is in millisecond I need to multiply for 1000 in order to obtain the seconds
//the 'time' row is the x-axis , the 'mail_send' row is the y-axsis
$dataset1[] = array($row['time'],$row['mail_sent']); //It contains the time value and the numbers of email sent from the user
}
echo('$.plot( $(\'<div style="width:600px;height:300px;"></div>\').appendTo(\'#placeholder\'),'.json_encode($dataset1).',options);\n');
}
echo('</script>');