"Tonni Aagesen" <use.my@signature.com> wrote in message
news:3b8d5d65$0$711$ba624c82@nntp01.dk.telia.net...
> Hej NG,
>
> Jeg kan ikke få "mail()" til at virke. Min opsætning ser sådan ud:
>
> System = Windows 2000 PRO
Hej Tonni,
Det betyder ganske simpelt at din smtpserver har sendt et uventet svar
tilbage, ved forsøget på at afsende..
Jeg prøvede lige at forbinde direkte til din smtpserver og prøve at sende en
mail til dig, og det brokkede den sig ikke over, så alt i alt er det bare
dybt underligt.. Har du prøvet igen med samme kode? bliver den ved med at
komme med samme fejl?
Jeg følte mig lidt nørdet, så jeg kiggede i diverse php sourcecode:
win32/sendmail.c:
> static char *ErrorMessages[] =
> {
...
> {"Server Error"},
(det var index 9 i ErrorMessages)
og:
> int Ack()
> {
....
> if (buf[0] > '3')
> return (SMTP_SERVER_ERROR);
og fra win32/sendmail.h:
#define SMTP_SERVER_ERROR 9
og så fra i /ext/standard/mail.c:
> #ifdef PHP_WIN32
> if (TSendMail(INI_STR("SMTP"), &tsm_err, headers, subject, to,
message) != SUCCESS){
> php_error(E_WARNING, GetSMErrorText(tsm_err));
Altså: TSendMail fejler fordi Ack fejler et sted, og så bobler fejlen opad i
diverse returns, og lander her til sidst, SMTP_SERVER_ERROR er navnet på den
konstant der indeholder indexet for fejlbeskeden, og GetSMErrorText henter
derefter tekstbeskeden i index 9 i ErrorMessages, som du så får smidt
tilbage i hovedet..
--
Mvh. Nezar Nielsen
http://fez.dk/