获取表单提交ID并输入phpmailer电子邮件

时间:2014-08-06 22:07:04

标签: php mysql forms email phpmailer

我创建了一个执行以下操作的故障单系统:( FYI st_id是我表中的id)

  • 用户填写表单并点击提交
  • 提交后,它会从表单和电子邮件中获取信息,通过phpmailer
  • 在电子邮件过程中,它还会将所有信息输入支持票证表

我遇到的问题是我使用support_ticket表st_id作为票号。

当用户填写表单时,该条目首先通过电子邮件发送所有表单数据,而不是获取st_id号码。

我需要在电子邮件中显示st_id号码。

所以,我正在寻找有关如何将st_id /票号与其他数据一起发送电子邮件的帮助。

这是我的数据库的样子。

enter image description here

以下是发送给我的电子邮件:

enter image description here

在动作脚本中,我有以下内容。

// form data

$ticket_type    = $_POST['ticket_type'];
$subject        = $_POST['subject'];
$content        = $_POST['content'];
$user_id        = $_POST['user_id'];
$unit           = $_POST['unit'];
$first_name     = $_POST['first_name'];
$last_name      = $_POST['last_name'];
$email          = $_POST['email'];
$phone          = $_POST['phone'];
$st_id          = $_POST['st_id'];

// query



$addticket = DB::getInstance()->insert('support_ticket', array(

    //'st_id'           => $st_id,
    'ticket_type'   => $ticket_type,
    'subject'       => $subject,
    'content'       => $content,
    'user_id'       => $user_id,
    'unit'          => $unit,
    'first_name'    => $first_name,
    'last_name'     => $last_name,
    'email'         => $email,
    'phone'         => $phone

));

然后是电子邮件部分:

User::sendNewticket('myemail@fake.com', 'Subject of email', '<strong>'.Input::get('first_name') .' '.Input::get('last_name').'</strong>, from unit <strong>'.Input::get('unit').',</strong> ' . 'has called in a maintenance ticket for the following:<br><br>

<strong>Ticket Number:</strong> '.Input::get('st_id') .'<br><br>
<strong>Ticket Type:</strong> '.Input::get('ticket_type') .'<br><br>
<strong>Subject:</strong> '.Input::get('subject') .'<br><br>
<strong>Message:</strong> '.Input::get('content') .'<br><br>
....etc

我需要找到一种让<strong>Ticket Number:</strong> '.Input::get('st_id') .'能够正常工作的方法。

我想我需要编写一个查询来从表中获取st_id并在发送电子邮件之前将其发布到电子邮件脚本,但是再次不确定如何使其工作。

非常感谢任何想法或解决方案。如果您需要我发布更多代码,请告诉我。我试图将其保持在相关的最低限度。

1 个答案:

答案 0 :(得分:0)

在此插入查询下,我添加了:

$addticket = DB::getInstance()->insert('support_ticket', array(

    //'st_id'           => $st_id,
    'ticket_type'   => $ticket_type,
    'subject'       => $subject,
    'content'       => $content,
    'user_id'       => $user_id,
    'unit'          => $unit,
    'first_name'    => $first_name,
    'last_name'     => $last_name,
    'email'         => $email,
    'phone'         => $phone

));

$st_id = DB::getInstance()->lastInsertId();

在我的DB.php类文件中,我不得不添加:

public function lastInsertId() {
return $this->_pdo->lastInsertId();
}

然后最后在我的电子邮件部分,我只是添加了这个来检索票号。

Ticket Number: '.$st_id.'