Mail versturen via PHP m.b.v. WAMPserver en SMTP

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Xanthium
  • Registratie: September 2005
  • Laatst online: 25-07 11:59
Ik heb de afgelopen 2 dagen van alles geprobeerd maar kom er maar niet uit. Het enige wat ik wil is een doodeenvoudig mailtje versturen naar de gebruiker na het uitvoeren van een bepaalde actie in PHP. Dit doe ik aan de hand van het volgende testscriptje:

code:
1
2
3
4
5
6
7
8
9
10
<?php
// The message
$message = "test1";

// In case any of our lines are larger than 70 characters, we should use wordwrap()
$message = wordwrap($message, 70);

// Send
mail('mijnandereadres@gmail.com', 'test', $message);
?>


na het invullen van de php.ini parameters voor smtp mail onder win32 blijft het script eeuwig hangen. Het vervelende is ook dat er geen parameter is voor het opgeven van een smtp username/password in de php.ini file. Ik heb een ander extern programma gebruikt dat de sendmail executable van linux simuleert onder de win32 omgeving. Ook dit geeft 0 resultaat (ook in de logs is niks terug te vinden). Ik probeer dit te laten werken met een google gmail account. Iemand een idee? Wordt er wanhopig van..

Acties:
  • 0 Henk 'm!

  • Room42
  • Registratie: September 2001
  • Niet online
Misschien heb je wat aan deze comment op php.net: http://www.php.net/manual/en/function.mail.php#39305

Maar wat doet die ' voor test in je code?

offtopic:
Gebruik voor het overzicht even de [php]-tag in plaats van de [code]-tag.

"Technological advancements don't feel fun anymore because of the motivations behind so many of them." Bron


Acties:
  • 0 Henk 'm!

  • bindsa
  • Registratie: Juli 2009
  • Niet online
Xanthium schreef op maandag 10 mei 2010 @ 00:22:
Ik heb de afgelopen 2 dagen van alles geprobeerd maar kom er maar niet uit. Het enige wat ik wil is een doodeenvoudig mailtje versturen naar de gebruiker na het uitvoeren van een bepaalde actie in PHP. Dit doe ik aan de hand van het volgende testscriptje:

code:
1
2
3
4
5
6
7
8
9
10
<?php
// The message
$message = "test1";

// In case any of our lines are larger than 70 characters, we should use wordwrap()
$message = wordwrap($message, 70);

// Send
mail('mijnandereadres@gmail.com', 'test, $message);
?>


na het invullen van de php.ini parameters voor smtp mail onder win32 blijft het script eeuwig hangen. Het vervelende is ook dat er geen parameter is voor het opgeven van een smtp username/password in de php.ini file. Ik heb een ander extern programma gebruikt dat de sendmail executable van linux simuleert onder de win32 omgeving. Ook dit geeft 0 resultaat (ook in de logs is niks terug te vinden). Ik probeer dit te laten werken met een google gmail account. Iemand een idee? Wordt er wanhopig van..
Hou er rekening mee dat veel SMTP mail servers geen mails accepteren/versturen die geen From: header bevatten.
Quote van de manual:
Note: When sending mail, the mail must contain a From header. This can be set with the additional_headers parameter, or a default can be set in php.ini.
Failing to do this will result in an error message similar to Warning: mail(): "sendmail_from" not set in php.ini or custom "From:" header missing. The From header sets also Return-Path under Windows.
Hier staat hoe je een from header aan een bericht kan toevoegen. Heb je al tools als LAMPP/XAMPP gebruikt?

En je mist een ' na test.

Acties:
  • 0 Henk 'm!

  • Xanthium
  • Registratie: September 2005
  • Laatst online: 25-07 11:59
bedankt voor jullie reacties, dat missende ' je was een tikfoutje van mij in dit voorbeeld. Ik heb inmiddels geprobeerd om met behulp van een lokale mailserver de boel aan de praat te krijgen, ook dit geeft geen resultaat. Ik gebruik Mercury32 mailserver. Als ik bovenstaand scriptje draai zie ik in de console van de Mercury STMP server dat de opdracht is ontvangen en succesvol is verzonden. Poortje 25 opengezet, maar nog steeds ontvang ik niks op mijn gmail inbox.. Ook niks in de spam folder. Het nare is dan ik zo ook niet na kan gaan waar het foutgaat. Volgens een poortscan staat 25 gewoon open aan de buitenkant.

Acties:
  • 0 Henk 'm!

  • Cartman!
  • Registratie: April 2000
  • Niet online
Misschien staat je provider niet toe dat je een eigen mailserver draait? Volgens mij heeft @Home dat ook heel lang in de policy gehad.