php - 当mysql数据库中的值更新时如何自动发送电子邮件

标签 php mysql email cordova

我设计了一个应用程序并使用phonegap构建,一切正常,但是当我的mysql数据库中附加的应用程序的值更新时,我希望自动向用户发送一封电子邮件。当计数器完成计数 runnindAds 表中的“状态”值时,我希望每次更新该值时发送一封电子邮件,下面是我为发送电子邮件编写的脚本,但我不知道如何自动化它,请帮助我应该或我能做什么

<?
include('../db_connect.php');
require_once "PHPMailer-master/class.phpmailer.php";

$id=$_GET["rid"];
$status = 3;
mysql_query("update runningAds set status = 3 where id = '$id'");

// get username
$qaz = mysql_query("select * from runningAds where id = $id") or die (mysql_error());
$wsx = mysql_fetch_array($qaz);
$username = $wsx["users"];
$stopTime = $wsx['stopTime'];

sendConfirmationEmail($username, $stopTime);

header("location: ../view_running_ads.php");

function sendConfirmationEmail($username, $stopTime)
    {
        $result2 = mysql_query("select * from dapUsers where userName='$username'");
        $row = mysql_fetch_array($result2);


        $to = $row['email'];
        //$from = "admin@addirectng.com";
        $subject = 'Advert Runtime Alert';
        $message = "Dear $username,<br \>
        Your display picture advert runtime has ended at $stopTime. <br \>
        Advert Direct Team";

        $headers = "MIME-Version: 1.0" . "\r\n";
        $headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
        $headers .= 'From: <admin@addirectng.com>' . "\r\n";

        mail($to,$subject,$message,$headers);

    }
?>

最佳答案

试试这个:

<?php
include('../db_connect.php');
require_once "PHPMailer-master/class.phpmailer.php";

$id=$_GET["rid"];
$status = 3;

 // get username
$qaz = mysql_query("select * from runningAds where id = $id") or die (mysql_error());
$wsx = mysql_fetch_array($qaz);
$username = $wsx["users"];
$stopTime = $wsx['stopTime'];

if (mysql_query("update runningAds set status = 3 where id = '$id'"))
{
     sendConfirmationEmail($username, $stopTime);
}





header("location: ../view_running_ads.php");

function sendConfirmationEmail($username, $stopTime)
    {
        $result2 = mysql_query("select * from dapUsers where userName='$username'");
        $row = mysql_fetch_array($result2);


        $to = $row['email'];
        //$from = "admin@addirectng.com";
        $subject = 'Advert Runtime Alert';
        $message = "Dear $username,<br \>
        Your display picture advert runtime has ended at $stopTime. <br \>
        Advert Direct Team";

        $headers = "MIME-Version: 1.0" . "\r\n";
        $headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
        $headers .= 'From: <admin@addirectng.com>' . "\r\n";

        mail($to,$subject,$message,$headers);

    }
?>

告诉我它是否有效。

关于php - 当mysql数据库中的值更新时如何自动发送电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26015781/

相关文章:

php - 使用复选框从表中删除多条记录(行)

php - 缺少 "headers already sent"- header 前的输出警告

javascript - Google Charts 动态数组 PHP 不带 SQL

php - 从表中获取值并更新 laravel 中同一 Controller 中的第二个表

php - codeigniter 事件记录或一般 mysql 帮助

php - 在生产服务器上登录不起作用

MySQL崩溃表无法保存结果集

iOS 邮件中的 HTML 签名

c# - Nopcommerce MessageTemplate,无法添加方法作为 token

linux - 可以通过 RS-232 直接发送电子邮件 (SMTP)