24. januar 2003 - 13:50
Der er
9 kommentarer og 1 løsning
PHP send mail
Hej, jeg har brug for noget hjælp, jeg her en lille webserver kørende, med WinXP og en Sambar 5.3 webserver. Jeg har installleret mysql og php. Der er ingen problemer i at køre php script, (gæstebog, counter, osv osv ) Men når jeg skal bruge sendmail, så sker der intet, jeg kigger i loggen og, kan se den har kørt en post funktion, men der kommer ingen mail. Alle mail bliver virusscannet inden de forlader serveren, ( webmail) jeg kan se virusprogrammei ikke bliver aktiveret nor der forsøges at sende en php mail. Jeg har rettet php.ini til under mail only for win32. smtp = smtp.mail.dk og sendmail_from me@localhost.com Er der nogle der ude der har et par gode ider?
Annonceindlæg fra Bluecircle
24. januar 2003 - 13:59
#1
Hvad skriver du i koden for at sende mailen?
24. januar 2003 - 14:11
#2
Koden ser sådan ud. <? $modtager = "bengt@wendt-net.dk"; $sendt = "Beskeden er sendt"; if($action == "") { echo" <html> <head> <meta http-equiv='Content-Language' content='da'> <meta http-equiv='Content-Type' content='text/html; charset=windows-1252'> <title>Mailform</title> <STYLE style='font-family: Verdana; font-size: 10 px; color: #800000; border: 1px solid #000000; background-color: #FFFF00' class='field'> .field { border-left:1px solid #800000; border-right:1px solid #000000; border-top:1px solid #800000; border-bottom:1px solid #000000; font-family: verdana, helvetica, sans-serif; width: 275px; background-color: #800000; color: #FFFF00; font-size: 10px } .area { border-left:1px solid #800000; border-right:1px solid #000000; border-top:1px solid #800000; border-bottom:1px solid #000000; font-family: verdana, helvetica, sans-serif; width: 275px; background-color: #800000; color: #FFFF00; font-size: 11px } .knap { border-left:2px solid #800000; border-right:2px solid #000000; border-top:2px solid #800000; border-bottom:2px solid #000000; font-family: verdana, helvetica, sans-serif; background-color: #800000; color: #FFFF00; font-size: 10px } </STYLE> </head> <form method='POST' action='$PHP_SELF' name='phpmail'> <body> <div align='center'> <table border='1' cellpadding='0' cellspacing='0' style='border-collapse: collapse' bordercolor='#111111' width='85%' height='90%' id='AutoNumber1' bgcolor='#99CCFF'> <tr> <td width='100%' valign='middle'> <div align='center'> <table border='0' cellpadding='0' cellspacing='0' style='border-collapse: collapse' width='100%' id='AutoNumber2' bgcolor='#99CCFF'> <tr> <td width='25%' align='right'><font face='Verdana' size='2'>Navn.:</font></td> <td width='8%'> </td> <td width='67%'><font size='2' face='Verdana'><input type='text' name='navn' size='20' class='field'></font></td> </tr> <tr> <td width='25%' align='right'><font face='Verdana' size='2'>Email.:</font></td> <td width='8%'> </td> <td width='67%'><font size='2' face='Verdana'><input type='text' name='email' size='20' class='field'></font></td> </tr> <tr> <td width='25%' align='right'><font face='Verdana' size='2'>Emne.:</font></td> <td width='8%'> </td> <td width='67%'><font size='2' face='Verdana'><input type='text' name='emne' size='20' class='field'></font></td> </tr> <tr> <td width='25%' align='right'><font face='Verdana' size='2'>Besked.:</font></td> <td width='8%'> </td> <td width='67%'><font size='2' face='Verdana'><textarea rows='7' name='besked' cols='23' class='area'></textarea></font></td> </tr> <tr> <td width='25%' align='right'><font face='Verdana' size='2'><br> </font></td> <td width='8%'> </td> <td width='67%'> <font size='2' face='Verdana'> <input type='submit' value='Send email' name='send' class='knap'> <input type='submit' value='Slet alt' name='slet' class='knap'></font></td> </tr> </table> </div></td> </tr> </table> </div> <font face='Verdana'> <input type='hidden' name='action' value='send'> </font> </form> </body> </html>"; } else { mail("$modtager", "$emne", "$besked", "From: $navn <$email>;"); echo "<html><title>Sendt...!</title><div align='center'><br><br><br><font face='Verdana' size='2'>$sendt</font></div></html>"; }?>
24. januar 2003 - 14:15
#3
Bare lige for at teste, prøv den her: <? if($emne && $indhold && $fra) { mail("bengt@wendt-net.dk" , $emne , $indhold , "From: $fra\nReply-to: $fra"); echo ("<font face=Verdana size=1 color=#008000>Beskeden er sendt</font>"); } elseif ($send) { echo("<font face=Verdana size=1 color=#FF0000>Alle felter skal udfyldes</font>"); } ?> <form action="<?=$PHP_SELF;?>" method="post"> Emne:<br> <input type="text" name="emne" size=30><br> Din email:<br> <input type="text" name="fra" size=30><br><br> Besked:<br> <textarea name="indhold" rows="8" cols="40"></textarea><br> <input type="submit" name="send" value="Send"> <input type="reset" value="Nulstil"> </form>
24. januar 2003 - 14:21
#4
Hvis du kigger i koden som bliver genereret udfra din kode ovenfor. Hvad står der så i action="" i form-taggen. I PHP-koden står der $PHP_SELF, men hvad står der når koden er parset af PHP. Årsagen til dit script ikke virker, kan skyldes at PHP er sat på til ikke at registre variabler globalt.
24. januar 2003 - 14:26
#5
Til totaliorden, Tak men samme resultat, i loggen en meddelse om post, men ingen mail til watever. Hvor sætter man php til at registrere variabler lokalt?? Bengt
24. januar 2003 - 14:37
#6
I php.ini. Under afsnittet Data Handling, skal register_globals rettes til: register_globals = on
24. januar 2003 - 14:53
#7
Hej igen det hjælper ikke, det står også noget om at man helst skal undgå dt sætte ,,register_globals = on På grund af sikkerheden Bengt
24. januar 2003 - 15:07
#8
Det er korrekt. Jeg bruger det heller aldrig selv. Men det kunne være årsagen. Sidder du på en TDC internetforbindelse? Ellers har du nok ikke adgang til den smpt-server. Prøv evt. at sætte en rigtig afsenderadresse istedet for me@localhost.com, altså en som eksisterer.
24. januar 2003 - 15:14
#9
Ja det er en TDC internetforbindelse. Jeg har også prøvet med min egen mailadresse som afsender, også unden held.
11. februar 2003 - 11:52
#10
Der er ikke kommet nogle brugbare svar, på mit problem Jeg kan stadig ikke sende formmail med PHP
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.