Я пытаюсь понять, как отправить электронное письмо при обновлении.
<?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();
Вышеуказанное работает некорректно. Он отправляет электронное письмо, но с ошибками во внешнем интерфейсе, а также не включает информацию о переменных.
введите описание изображения здесь
Если я добавляю только текст, он отправляется нормально, но когда я добавляю какие-либо переменные, он выдает ошибку. Должна быть ошибка при извлечении переменной. Я попытался добавить, как показано ниже.
function my_mail_function(){
$to = "rma@mysite.net";
$subject = "SKU Update Completed";
$values2 = $row;
$message = "
<html>
<head>
<title>Sku Update Complete</title>
</head>
<body>
$row['rma_submissions.paid']
</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: <support@mysite.net>' . "\r\n";
mail($to,$subject,$message,$headers);
}
Я бы хотел, чтобы при обновлении отправлялось электронное письмо на указанные выше электронные письма и вставлялись данные из таблицы. Я потерялся в данный момент.