Avatar billede Slettet bruger
22. august 2004 - 11:52 Der er 6 kommentarer og
1 løsning

Mail() problemer > vil ikke sende mail

Jeg har dette scrript til at sende en mail til brugere, men det sender ikke nogen mail. Er der nogen der kan se fejlen..

        $til = "$row[mail]";
        $fra = "$generelt->mail";
        $emne = "$generelt->sitenavn - nulstille kodeord";
        $cont =
        "
        \n
        Kodeordet til brugeren: $row[brugernavn], er blevet ændret til: test
        \n\n
        ";
        mail($til, $emne, $cont, "From: ". $fra);


Hvis der ikke er nogen umiddelbare fejl, er det nok mine variabler. Jeg er bare ret sikker på at de er korrekte
Avatar billede dennismp Nybegynder
22. august 2004 - 12:27 #1
Hvis jeg skulle have skrevet samme kode:

$til = $row['mail'];
$fra = $generelt->mail;
$emne = $generelt->sitenavn . ' - nulstille kodeord";
$cont = "
        \n
        Kodeordet til brugeren: {$row['brugernavn']}, er blevet ændret til: test
        \n\n
        ";

mail($til, $emne, $cont, "From: ". $fra);

Men det er svært at se om variablernes indhold er korrekte udfra dette :).

Har du forsøgt bare at sende en mail til dig selv. Altså en fil med:
<?php mail('din@email','subject','body'); ?>

for at se om den kommer frem. Hvis den gør, så ved du, at det ikke er mail() der ikke dur.
Avatar billede Slettet bruger
22. august 2004 - 12:29 #2
ok, har jeg ikke prøvet.. når du skriver {$row['brugernavn']}

gør {} så noget, eller viser den bare {Wicez} (eks)
Avatar billede dennismp Nybegynder
22. august 2004 - 12:43 #3
Ja, det gør noget. Prøv at kigge her:
http://dk.php.net/manual/en/language.types.string.php#language.types.string.parsing.simple

I det "store" eksempel lige efter "Simple syntax" viser de, hvornår man kan bruge {} og hvornår man skal, for at undgå problemer.
Avatar billede Slettet bruger
22. august 2004 - 17:59 #4
så det bedste er, altid at skrive {$var} i stedet for $var ?
Avatar billede dennismp Nybegynder
22. august 2004 - 18:13 #5
Næh. Det bedste er jo at få det til at virke.. :)

Jeg bruger det kun ved arrays.. altså

print "dit navn {$row['navn']}<br />";
men ikke
print 'dit navn: ' . $row['navn'] . '<br />';

Fik du din testmail?
Avatar billede Slettet bruger
26. september 2004 - 10:40 #6
det virker stadig ikke.. men smid svar
Avatar billede dennismp Nybegynder
26. september 2004 - 12:00 #7
Hvis det er din egen php server, og en simpel testmail ikke kommer frem, så tjek din php.ini og se om du har sat rigtige værdier ved de keywords der starter med smtp.

Hvis det er et webhotel, så ville jeg kontakte deres support.

Eller finde en klasse der bruger smtp og så snakke direkte med en smtp-server istedet for at bruge mail().
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester