MySQL Forums
Forum List  »  PHP

How To Send MYSQL Data To An Email
Posted by: Joquim Fernandes
Date: February 29, 2020 02:51AM

After the customer fills the form, the form data is sent to mysql and an email gets sent to me with the last form data that the customer submitted. But, the email "last mysql data" is not going as inline text. Please help me. Sample code is given below.



<?php

define('DB_NAME', 'XXXXXXX');
define('DB_USER', 'XXXXXXX');
define('DB_PASSWORD', 'XXXXXXX');
define('DB_HOST', 'localhost');

$link = mysql_connect (DB_HOST, DB_USER, DB_PASSWORD);

if (!$link) {
die('Could not connect: ' . mysql_error());
}

$db_selected = mysql_select_db(DB_NAME, $link);

if (!$db_selected) {
die('Can\'t use ' . DB_NAME . ': ' . mysql_error());
}

//Start Posting the data in Mysql database from Form Input

$value = $_POST['input1'];
$value2 = $_POST['MAmount'];

$sql = "INSERT INTO demo (input1, MAmount) VALUES ('$value', '$value2')";

if (!mysql_query($sql)) {
die('Error: ' . mysql_error());

}

//start print the database

$data = mysql_query("SELECT * FROM demo ORDER BY ID DESC LIMIT 1")
or die(mysql_error());
Print "<table border cellpadding=3>";
while($info = mysql_fetch_array( $data ))
{
Print "<tr>";
Print "<th>ID:</th> <td>".$info['ID'] . "</td> ";
Print "<th>Input1:</th> <td>".$info['input1'] . "</td> ";
Print "<th>MAmount:</th> <td>".$info['MAmount'] . " </td></tr>";
}
Print "</table>";

mysql_close();


//end print the database on form processing page

//start emailing the data


date_default_timezone_set('Asia/Kolkata');

require_once('class.phpmailer.php');
//include("class.smtp.php"); // optional, gets called from within class.phpmailer.php if not already loaded

$mail = new PHPMailer();

//$body = "gdssdh";
//$body = preg_replace("[\]",'',$body);

$mail->IsSMTP(); // telling the class to use SMTP
$mail->Host = "ssl://XXXXXXX.XXXXXXX.org"; // SMTP server
$mail->SMTPDebug = 1; // enables SMTP debug information (for testing)
// 1 = errors and messages
// 2 = messages only
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "ssl"; // sets the prefix to the servier
$mail->Host = " http://raunakgroup.com "; // sets GMAIL as the SMTP server
$mail->Port = 465; // set the SMTP port for the GMAIL server
$mail->Username = "XXXXXXX.com"; // GMAIL username
$mail->Password = "XXXXXXX"; // GMAIL password

$mail->SetFrom('contact@XXXXXXXX.com', 'HAL');

//$mail->AddReplyTo("XXXXXXX', 'First Last");

$mail->Subject = "XXXXXXX";

//THE PROBLEM IS HERE WHEN I WANT TO SEND THE DATA AS INLINE TEXT TO EMAIL FROM MYSQL IT IS NOT WORKING. ONLY "PRINT THE DATA" IS SENDING TO EMAIL.

$body = 'Print the data';
mysql_connect("localhost","XXXXXXX","XXXXXXX");
@mysql_select_db("XXXXXXX");
$query["SELECT * FROM demo ORDER BY ID DESC LIMIT 1"];
$result = mysql_query($query);

//while ($row = mysql_fetch_array ($result)) {
// $mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
$mail->MsgHTML($body);
$address = "XXXXXXX";
$mail->AddAddress($address, "user2");

//$mail->AddAttachment("images/phpmailer.gif"); // attachment
//$mail->AddAttachment("images/phpmailer_mini.gif"); // attachment

if(!$mail->Send()) {
echo "Mailer Error: " . $mail->ErrorInfo;
} else {
echo "Message sent!";
}

?>

Options: ReplyQuote


Subject
Written By
Posted
How To Send MYSQL Data To An Email
February 29, 2020 02:51AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.