2016-12-08 4 views
0

У меня есть форма бронирования на моем веб-сайте codeigniter. когда пользователь книги я получил электронное письмо, но проблема в том, что я получаю 15 электронных писем за бронирование. У меня есть одно электронное письмо с информацией, предоставленной пользователем, и отдых пуст.получение нескольких электронных писем в форме заказа на регистрацию кода

Вот моя форма:

<form method="post" action="<?php echo base_url();?>Booking/booking_mail/<?php echo $row['destination']; ?>/<?php echo $row['fare']; ?>" enctype="multipart/form-data"> 

         <input name="txtname" type="text" class="form-control" required="required" /> 




         <input name="textcel" type="textcel" class="form-control" required="required" /> 


         <input name="txtemail" type="email" class="form-control" name="txtemail" required="required" /> 



        <textarea name="txtmessage" rows="2" cols="20" id="txtmessage" class="form-control" name="txtmessage"> 
</textarea> 


        <input type="submit" name="btnsendmessage" value="Send Message" id="btnsendmessage" class="btn btn-primary" /> 
         </form> 

и вот моя функция контроллера:

function booking_mail(){ 

     $txtname= $this->input->post('txtname'); 
     $txtcel= $this->input->post('textcel'); 
     $txtemail= $this->input->post('txtemail'); 
     $txtmessage= $this->input->post('txtmessage'); 
     $destination = $this->uri->segment(3); 
     $fare = $this->uri->segment(4); 

      $this->load->library('email'); 
      $this->email->from('turkishairlines.com', $txtname); 
      $this->email->to('[email protected]'); 
      $this->email->subject('Turkish Airline Booking Form'); 

      $this->email->message(
      'Name: '.$txtname.' 
      Cell No: '.$txtcel.' 
      Email: '.$txtemail.' 
      Message: '.$txtmessage.' 
      Destination: '.$destination.' 
      Fare: '.$fare.'' 
     ); 
     $this->email->send(); 

      $this->load->view('thanks'); 

    } 

Пожалуйста, помогите мне.

Благодаря

ответ

0

Похоже, когда-либо вы попали страницу, это отправить вам по электронной почте. Чтобы избежать этой проблемы, вы можете проверить, что форма отправлена ​​или нет.

Пример

function booking_mail() 
{ 

    if(isset($_POST['txtemail'])) 
    { 
     $txtname= $this->input->post('txtname'); 
     $txtcel= $this->input->post('textcel'); 
     $txtemail= $this->input->post('txtemail'); 
     $txtmessage= $this->input->post('txtmessage'); 
     $destination = $this->uri->segment(3); 
     $fare = $this->uri->segment(4); 

      $this->load->library('email'); 
      $this->email->from('turkishairlines.com', $txtname); 
      $this->email->to('[email protected]'); 
      $this->email->subject('Turkish Airline Booking Form'); 

      $this->email->message(
      'Name: '.$txtname.' 
      Cell No: '.$txtcel.' 
      Email: '.$txtemail.' 
      Message: '.$txtmessage.' 
      Destination: '.$destination.' 
      Fare: '.$fare.'' 
     ); 
     $this->email->send(); 

      $this->load->view('thanks'); 
    } 
    else 
     die('form is not posted'); 

}