Это работает отлично на одной странице. Это дает мне всю необходимую информацию. Но я хочу отправить ему электронное письмо. Хотя я не мог понять, как это сделать
$db = new mysqli('localhost', 'root', '', 'panel'); $sql = "select * from detail"; $read = $db->query($sql); <table style="border:0;width:600px;"> <tr> <td width="50px">Who</td> <td width="150px">Time</td> <td width="300px">What</td> </tr> <?php while($wr = mysqli_fetch_array($read)) { echo' <tr> <td>'.$wr['Who'].'</td> <td>'.$wr['Time'].'</td> <td>'.$wr['What'].'</td> </tr> '; } ?>
Вам необходимо буферизировать весь создаваемый HTML-код (что означает, что вы не отправляете его в браузер, а накапливаете его в буфере) и отправляете этот буфер пользователю в виде электронной почты:
// Start buffering ob_start(); // Generate HTML just like you're doing now echo( "<html><body><table><tr><td></td></tr></table></body></html>" ); // Get the contents of the buffer $html = ob_get_contents(); // Stop the buffering ob_end_clean(); // Now use the content string you have to send an email just like the example at: // http://il.php.net/manual/en/function.mail.php $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers .= 'To: to@domain.com' . "\r\n"; $headers .= 'From: from@domain.com' . "\r\n"; mail( "to@domain.com", "This is the subject", $html, $headers );