[PHP] Mail() en BCC probleem op windows

Pagina: 1
Acties:

  • smaij
  • Registratie: November 2000
  • Laatst online: 07:37
Ik heb GoT en php.net veel bezocht hierover, maar ik heb het tot nu toe alleen voor elkaar gekregen To: te gebruiken.. (zie phpfreakz). Ik ben nu de tijd aan het nemen mijn probleem te analyseren en het op te lossen. Dus ik script herschrijven naar Bcc: voor duzenste keer. Uiteindelijk ben ik dus op onderstaande uitgekomen:
PHP:
1
<? if ($verzenden == "1"){  if ($Txtonderwerp == ''){   $Error++;  }  if ($Message == ''){   $Error++;  }  if ($Error == 0 ){   $subject = $Txtonderwerp;   $headers = "";   $headers .= "From: ";   $headers .= $TXTUserName;   $headers .= " <";   $headers .= $TXTEmail;   $headers .= ">\r\n";   $headers .= "X-Sender: <webmaster@makingbones.dnsalias.net>\r\n";   $headers .= "X-Mailer: PHP\r\n";   $headers .= "X-Priority: 1\r\n";   $headers .= "Return-Path: <webmaster@makingbones.dnsalias.net>\r\n";   $UserNummer = '1';   $TelMail = 0;   $headers .= "Bcc: ";   while ($UserNummer <= $QueryRowPassed){    $Query_Naam = ${'n'.$UserNummer};    $Query_Email = ${'m'.$UserNummer};    $checknumber = ${'c'.$UserNummer};    if ($checknumber == 'ON'){     $headers .= $Query_Naam;     $headers .= " <";     $headers .= $Query_Email;     $headers .= ">";     $TelMail++;    }    if ($UserNummer <> $QueryRowPassed){     $headers .= ", ";    }    $UserNummer++;   }   //$headers .= "\n";   $Mailsucces = mail("admin@makingbones.dnsalias.net", $subject, $Message, $headers);   If ($Mailsucces){    echo ' <center> gelukt om '. $TelMail .' mail(s) te versturen </center>';    $completed = 1;   }   else {    echo $Mailsucces;   }  } }?>

Bij Bcc: mag je toch ook nog steeds de volgende vorm hanteren? of kan dat niet omdat het in headers staat?
Bcc: stephen <smaij@hotmail.com>, jantje <jantje@Got.com>

Kan iemand me tips geven of het probleem oplossen?

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

Kan iemand me tips geven of het probleem oplossen?
vragen of iemand het wilt oplossen is een script request.

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


  • smaij
  • Registratie: November 2000
  • Laatst online: 07:37
sorry dusty, ik had het anders moeten omschrijven..

edit:


Dat zal ik hier dus effe doen..
Ik gebruik windows en apache met php en mysql..
moet ik nu Bcc of bcc gebruiken. Zonder To: of maakt dat niks uit.
Ik gebruik de winroute mailserver.. ondersteund die uberhaupt wel bcc mails?
tot zover effe dan


  • smaij
  • Registratie: November 2000
  • Laatst online: 07:37
nobody... dan effe een klein schopje. :)

  • smaij
  • Registratie: November 2000
  • Laatst online: 07:37
wat is er niet juist aan deze headers?
code:
1
2
3
4
5
6
From: smaij <smaij@hotmail.com>
X-Sender: <webmaster@makingbones.dnsalias.net>
X-Mailer: PHP
X-Priority: 1
Return-Path: <webmaster@makingbones.dnsalias.net>
Bcc: smaij <smaij@hotmail.com>, stephen <admin@makingbones.dnsalias.net>

de code heb ik overigens gewijzigd naar
PHP:
1
<? if ($verzenden == "1"){  if ($Txtonderwerp == ''){   $Error++;  }  if ($Message == ''){   $Error++;  }  if ($Error == 0 ){   $subject = $Txtonderwerp;   $headers = "From: " . $TXTUserName . " <" . $TXTEmail . ">\r\n";   $headers .= "X-Sender: <webmaster@makingbones.dnsalias.net>\r\n";   $headers .= "X-Mailer: PHP\r\n";   $headers .= "X-Priority: 1\r\n";   $headers .= "Return-Path: <webmaster@makingbones.dnsalias.net>\r\n";   $UserNummer = '1';   $TelMail = 0;   $headers .= "Bcc: ";   while ($UserNummer <= $QueryRowPassed){    if (${'c'.$UserNummer} == 'ON'){     //$headers .=  ${'n'.$UserNummer} . " <" . ${'m'.$UserNummer} . ">";     $headers .=  ${'m'.$UserNummer};     $TelMail++;     if ($UserNummer != $QueryRowPassed){      $headers .= ", ";     }    }    $UserNummer++;   }   $Mailsucces = mail("admin@makingbones.dnsalias.net", $subject, $Message, $headers);   If ($Mailsucces){    $headers = addslashes($headers);    echo $headers;    echo ' <center> gelukt om '. $TelMail .' mail(s) te versturen </center>';    $completed = 1;   }   else {    echo $Mailsucces;   }  } }?>

  • smaij
  • Registratie: November 2000
  • Laatst online: 07:37
schopje

Verwijderd

stuur jezelf eens een mail met bcc en bekijk de headers... dan weet je toch of het goed is... ;)

  • smaij
  • Registratie: November 2000
  • Laatst online: 07:37
Dit heb ik al gedaan.. duzenden malen, maar ik krijg niks ;) alleen het adres bij To: en Bcc: headers zijn blanc, en zijn niet te zien ;) anders zou je nog steeds achter iemands emailadressen kunnen komen..
aan het eind van het script maak ik trouwens een echo van $headers.

  • Sircuri
  • Registratie: Oktober 2001
  • Niet online

Sircuri

Volledig Appelig

quote uit php.net manual:
Note: You must use \r\n to seperate headers, although some Unix mail transfer agents may work with just a single newline (\n). The Cc: header is case sensitive and must be written as Cc: on Win32 systems. The Bcc: header is also not supported on Win32 systems.
lijkt me vrij duidelijk.

los het op door een aparte PHP Mailer te zoeken die rechtstreeks via sockets een connectie maakt met een SMTP server.

edit:

URL nar phpmailer: http://phpmailer.sourceforge.net

Werkt heel goed bij mij.

Signature van nature


  • smaij
  • Registratie: November 2000
  • Laatst online: 07:37
schopje ;(
[huh]
was niet eens nodig.. der was dus net een post.. naja
[/huh]
Pagina: 1