我正在处理一个只有 2 个字段的简单表单。姓名和电子邮件。到目前为止我已经成功地做到了。
- 我有将数据发送到 mysql 数据库的表单。
- 我可以全面查询数据库,也可以根据表单条目查询数据库。
- 我已经测试过,可以使用基本邮件脚本或表单发送电子邮件。
我遇到的问题是,我需要将数据与数据库中的第三个字段一起发送给提交者,该字段是自动增量主键作为其成员编号。我的问题是如何根据数据库条目发送电子邮件。
即;感谢您“提交者姓名”加入您的成员(member) ID 是“主键”。 这是我当前的代码。
Index.html
<form method="post" action="doit.php">
Name<input name="Name" type="text" /><br>
Email<input name="Email" type="text" /><br>
<input name="Submit" type="submit" value="submit" />
</form>
doit.php
<?php
$con = mysqli_connect('localhost','DB_Username','DB_Password');
if(!$con)
{
echo 'Not Connected To Server';
}
if(!mysqli_select_db($con,'DB_Name'))
{
echo 'Database Not Selected';
}
$Name = $_POST['Name'];
$Email = $_POST['Email'];
$sql = "INSERT INTO Table_name (Name,Email) VALUES ('$Name','$Email')";
if(!mysqli_query($con,$sql))
{
echo 'Not Inserted';
}
else
{
echo 'Inserted';
}
header ("refresh:2; url=auto-response.php");
?>
自动响应.php
<?php
if ($_SERVER["REQUEST_METHOD"}=="POST") {
$connnection=mysqli_connect("localhost","DB_username","DB_password","DB_Name");
// Check connection
if ($connection) {
echo "connection successfull! <br>;"
} else {
die("connection failed. Reason ". mysqli_connect_err())
}
{
$Email=$_POST["Email"];
$Name=$_POST["Name"];
$ID=$_POST["ID"];
$sql="SELECT ID,Email,Name FROM Table_Name WHERE Email='".$Email."'";
$result = mysqli_query($connection,$sql);
$to = 'Email';
$subject = 'Thank you For Joining';
$message = 'Thank you for joining "Email" Your Member ID is "ID"';
$headers = 'From: dsarmy@thedarksideshop.com' . "\r\n" .
'Reply-To: dsarmy@thedarksideshop.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
?>
最佳答案
Mysql有它自己的函数可以给你id。虽然您在插入时已经有了名称。
// Using the below line right after your insert you can get the primary id.
$id = $connection->insert_id; // Get latest inserted id.
希望有帮助。
编辑:根据您所做的编辑,我已按照其工作方式安排了您的代码。现在就试试这个。
Index.html
<form method="post" action="doit.php">
Name<input name="Name" type="text" /><br>
Email<input name="Email" type="text" /><br>
<input name="Submit" type="submit" value="submit" />
</form>
doit.php
$con = mysqli_connect('localhost','DB_Username','DB_Password');
if(!$con)
{
echo 'Not Connected To Server';
}
if(!mysqli_select_db($con,'DB_Name'))
{
echo 'Database Not Selected';
}
$Name = $_POST['Name'];
$Email = $_POST['Email'];
$sql = "INSERT INTO Table_name (Name,Email) VALUES ('$Name','$Email')";
if(!mysqli_query($con,$sql))
{
echo 'Not Inserted';
}
else
{
echo 'Inserted';
$id = $con->insert_id; // Get latest inserted id.
$to = $Email;
$subject = 'Thank you For Joining';
$message = 'Thank you for joining "'.$Name.'" Your Member ID is "'.$id.'"';
$headers = 'From: dsarmy@thedarksideshop.com' . "\r\n" .
'Reply-To: dsarmy@thedarksideshop.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
}
关于php - 使用php基于mysql查询自动回复电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46381739/