2013-02-19 6 views
0

У меня очень любопытная ошибка в моем скрипте, и я не могу найти ошибку.новый PHPMailer() разрушает сеанс

Я хочу отправить электронную почту через SMTP на внешний сервер, например, на gmail-сервер. После отправки электронной почты сценарий должен перенаправить себя с дополнительным параметром. Идентификатор сеанса также сохраняется как параметр $ _GET. Мой код выглядит следующим образом:

$mail = new PHPMailer(); 
    $mail->IsSMTP(); 
    $mail->SMTPAuth = false; 
    $webmaster_email = "[email protected]"; 
    $email="[email protected]"; 
    $name="Simon"; 
    $mail->From = $webmaster_email; 
    $mail->FromName = "Simon"; 
    $mail->AddAddress($empfaenger, $row['name'] . " " .$row['name']); 
    $mail->AddReplyTo($webmaster_email,"Webmaster"); 
    $mail->WordWrap = 50; 
    $mail->AddAttachment($filename); 
    $mail->IsHTML(false); 
    $mail->Subject = $betreff; 
    $mail->Body = $nachricht; 
    $mail->AltBody = $nachricht; 
    if(!$mail->Send()) 
    { 
     echo "Mailer Error: " . $mail->ErrorInfo; 
    } 
header('Location: http://somedomain.com/somedirectory?sid='.$_GET['sid'].'&step=step2&message=a1'); 

Проблема теперь, что моя сессия всегда теряется/уничтожена, я не знаю, на самом деле, что именно. Любопытная вещь: перенаправление работает, когда я комментирую новый PHPMailer(); линия вне.

Я ищу проблему сейчас несколько часов ... Я надеюсь, что кто-то сможет мне помочь.

Привет, Simon

+1

Вы вручную поддерживаете сеанс с '$ _GET ['sid']? –

+2

Имейте в виду, что 'http: // somedomain.com' не' http: // www.somedomain.com', и сеансы не будут перенесены. Может, это твоя проблема? –

+0

Да, я должен, я не реализовал систему самостоятельно, но она поддерживает сеансы вроде этого. И Пекка, нет, это определенно не перенаправление. Он отлично работает, не генерируя PHPMailer-Object ... – Hayo

ответ

0

Я получил его, с удалением линии

$email="[email protected]"; 

не было никаких проблем больше. Не знаю, почему, но спасибо за вашу помощь!

+2

Это действительно не имеет смысла ... проблема должна быть где-то в другом месте. – acme

+0

Да, но во всем скрипте у меня нет другой переменной $ email или чего-то еще. Я думал, что переписал переменную или что-то вроде этого. – Hayo

+0

+1 для этого действительно не имеет смысла. – SDC

Смежные вопросы