Php 在表更新数据表编辑器上发送电子邮件
我想知道如何在更新时发送电子邮件Php 在表更新数据表编辑器上发送电子邮件,php,email,datatables,Php,Email,Datatables,我想知道如何在更新时发送电子邮件 <?php function my_mail_function(){ $to = "rma@mysite.net"; $subject = "RMA Update Completed"; $values2 = $row['rma_submissions.paid']; $message = " <html> <head>
<?php
function my_mail_function(){
$to = "rma@mysite.net";
$subject = "RMA Update Completed";
$values2 = $row['rma_submissions.paid'];
$message = "
<html>
<head>
<title>RMA Update Complete</title>
</head>
<body>
<p>This is a copy of your RMA Update Request</p>
<table>
$values2
<tr><td>Completed?: <b> Yes </b></td></tr>
</table>
</body>
</html>
";
// Always set content-type when sending HTML email
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
// More headers
$headers .= 'From: <noreply@mysite.net>' . "\r\n";
mail($to,$subject,$message,$headers);
}
include( "lib/DataTables.php" );
use
DataTables\Editor,
DataTables\Editor\Field,
DataTables\Editor\Format,
DataTables\Editor\Mjoin,
DataTables\Editor\Options,
DataTables\Editor\Upload,
DataTables\Editor\Validate,
DataTables\Editor\ValidateOptions;
Editor::inst( $db, 'rma_submissions', 'ID' )
->fields(
Field::inst( 'rma_submissions.id' ),
Field::inst( 'rma_submissions.timestamp' )
->validator( Validate::dateFormat( 'Y-m-d H:i:s' ) )
->getFormatter( Format::datetime( 'Y-m-d H:i:s', 'Y-m-d H:i:s' ) )
->setFormatter( Format::datetime( 'Y-m-d H:i:s', 'Y-m-d H:i:s' ) ),
Field::inst( 'rma_submissions.location' ),
Field::inst( 'rma_submissions.orig_invoice' ),
Field::inst( 'rma_submissions.all_accessories' ),
Field::inst( 'rma_submissions.new_submission' ),
Field::inst( 'rma_submissions.man_sku' ),
Field::inst( 'rma_submissions.device_id' ),
Field::inst( 'rma_submissions.failure_desc' ),
Field::inst( 'rma_submissions.defective_oob' ),
Field::inst( 'rma_submissions.original_sales_date' ),
Field::inst( 'rma_submissions.vendor' ),
Field::inst( 'rma_submissions.email' ),
Field::inst( 'rma_submissions.device_man' ),
Field::inst( 'rma_submissions.district' ),
Field::inst( 'rma_submissions.rma_number' ),
Field::inst( 'rma_submissions.paid' ),
Field::inst( 'rma_submissions.paid_date' ),
Field::inst( 'rma_reasons.reason_description' ),
)
->leftJoin( 'rma_reasons', 'rma_reasons.reason_code', '=', 'rma_submissions.failure_desc' )
->on( 'postEdit', function ( $editor, $id, $values, $row ) {
my_mail_function();
} )
->process( $_POST )
->json();
PHP文档中的
查看给出的示例,数组的变量扩展不应包含引号。请尝试:
$message = "
<html>
<head>
<title>Sku Update Complete</title>
</head>
<body>
$row[rma_submissions.paid]
</body>
</html>
";
$message=”
Sku更新完成
$row[rma_提交。已支付]
";
一般来说,由于变量扩展的复杂性,我倾向于使用串联。i、 e
$message = "
<html>
<head>
<title>Sku Update Complete</title>
</head>
<body>".$row['rma_submissions.paid']."</body>
</html>
";
$message=”
Sku更新完成
“$row['rma_submissions.payed']
";
或者我会创建一个简单的模板,然后使用preg replace或类似的方法将字段占位符替换为实际值。一件事。您需要将表示关联数组索引的变量括在双引号的“
字符串中,并使用大括号{}
如$message=“{$row['rma_submissions.paid']}”代码>看一看。如果我删除{}
,这是一个致命错误。@umairkan如果我添加括号,它会完全破坏脚本。
$message = "
<html>
<head>
<title>Sku Update Complete</title>
</head>
<body>".$row['rma_submissions.paid']."</body>
</html>
";