Avatar billede human Nybegynder
22. maj 2003 - 04:45 Der er 31 kommentarer og
2 løsninger

sending af mail.

Jeg har lavet et script så brugere kan oprette sig en profil. I det script skal man bl.a. skrive sin email adreese, man vil så få tilsendt en mail hvor man skal aktivere sin konto. Det virker også fint nok så længe jeg bruger min egen email adresse (mail serveren er på samme maskine som min webserver). Men hvis jeg så indtaster fx min hotmail adresse får jeg følgende fejl:

Warning: mail() [function.mail]: SMTP server response: 550 , Recipient unknown in c:\apache\htdocs\techcity\beta\register_check.php on line 147
Dine konto informationer er blevet sendt til din email adresse, tjek den venligst og følg instruktionerne!

Alle oplysninger bliver gemt i databasen. Men mailen bliver aldrig sendt. Hvad kan problemet være?

Sig hvis i skal have noget kode. Men ved ikke rigtig om det er den der er noget med, kan det vel næsten ikke være når det virker med min egen mail adresse?


// Human
Avatar billede human Nybegynder
22. maj 2003 - 04:54 #1
Bruger btw. Mdaemon mail server. Er det muligt det er der jeg skal rette noget?
Avatar billede nikolajdu Nybegynder
22. maj 2003 - 04:59 #2
Har du sat mailserveren op i din php.ini

Der er noget med :

[mail function]
; For Win32 only.
SMTP = localhost

Skal måske byttes ud med din mailserver....??
Avatar billede nikolajdu Nybegynder
22. maj 2003 - 05:01 #3
recipient unknown - Måske du skal vise hvad der sker i linie 147.

mail(.....)
Avatar billede human Nybegynder
22. maj 2003 - 05:10 #4
linie 147: mail($email_address, $subject, $message, "From: Techcity.dk Admin<michael@techcity.dk>\nX-Mailer: PHP/" . phpversion());

Der burde da ikke skulle stå andet end localhost.
Men har du et forslag så kom med det.
Avatar billede human Nybegynder
22. maj 2003 - 05:13 #5
i php.ini er der også et sted der står sendmail_from:

Kan det være det? Hvis ja, hvad skal der så stå?
Avatar billede detox Nybegynder
22. maj 2003 - 05:38 #6
[mail function]
SMTP=din.mail.server
sendmail_from=dinmail@adresse.dk
Avatar billede tipsen Nybegynder
22. maj 2003 - 11:03 #7
Hvad indeholder $email_address ?
Avatar billede human Nybegynder
22. maj 2003 - 23:04 #8
detox: Det er jo ikke altid der skal sendes mail fra den samme adresse. Jeg er ikke den eneste som bruger den server.

tipsen: Den indeholder jo så den email adresse som brugeren indtaster.
Avatar billede detox Nybegynder
22. maj 2003 - 23:31 #9
I så fald er det jo korrekt, som du gør; at bruge mail-header parameteren.
Forøvrigt tror jeg ikke det er strengt nødvendig at udfylde "sendmail_from", det er nok nærmere ment som en slags default.
Avatar billede human Nybegynder
22. maj 2003 - 23:32 #10
Det var også det jeg tænkte.. Men hvad fa'en er det så lige jeg gør forkert? :/
Avatar billede detox Nybegynder
23. maj 2003 - 00:01 #11
Har du muligvis spamfilter på din hotmail, så kunne det tænkes at den anså din mail for spam.
Avatar billede tipsen Nybegynder
23. maj 2003 - 00:17 #12
Det tyder på at relaying ikke er tillad på mail-serveren...
Avatar billede human Nybegynder
23. maj 2003 - 00:39 #13
detox: Det kan næppe skyldes fejlen som bliver udskrevet på siden.

tipsen: Hvordan kan det så være at det virker fint hvis jeg indtaster min egen email adresse, som ligger på serveren?
Avatar billede human Nybegynder
23. maj 2003 - 00:48 #14
Okay.. Har lige fundet ud af noget måske ret interessant. Den kan sende mail til alle som ligger på mail serveren. Jeg har 4 forskellige domæner på den. OG den kan sende til dem alle, og alle accounts.

Hvad er det så lige der gør at den ikke kan sende til andre uden for "localhost", hvis man kan sige det sådan.

Skal
[mail function]
; For Win32 only.
SMTP = localhost

evt. ændres til noget andet. Hvis ja, hvad?
Avatar billede detox Nybegynder
23. maj 2003 - 00:51 #15
Det kunne da godt tænkes, hvis hotmail spærrer for modtagelse af mailen.
Men jeg er da tilbøjelig til at give tipsen ret, da din lokale mail-adresse jo er på samme host. Har du prøvet andre adresser?
Avatar billede human Nybegynder
23. maj 2003 - 00:52 #16
Jeg prøvede lige at ændre localhost til min externe ip. Det hjalp ikke.
Avatar billede human Nybegynder
23. maj 2003 - 00:53 #17
Well.. I kan selv prøve at teste det. http://www.techcity.dk/beta/registrer.php

Synes ikke det virker med nogen email adresser.
Avatar billede tipsen Nybegynder
23. maj 2003 - 00:54 #18
human: Netop fordi adressen ligger på mail-serveren - det kan du med alle mail-servere!
Avatar billede detox Nybegynder
23. maj 2003 - 00:54 #19
SMTP=din.mail.server
men hvis ikke relaying er tilladt, må du evt. prøve at ændre opsætning af din mail-server.
Avatar billede human Nybegynder
23. maj 2003 - 00:55 #20
Tjekker det lige engang..
Avatar billede human Nybegynder
23. maj 2003 - 00:57 #21
Det var relay, sorry der ;o)

Takker mange gange for hjælpen!


// Human
Avatar billede human Nybegynder
23. maj 2003 - 00:57 #22
Smid et svar begge 2
Avatar billede tipsen Nybegynder
23. maj 2003 - 00:59 #23
Læs evt:

http://www.comms.unsw.edu.au/info/seminars/aidan/spam.pdf
http://www.iecc.com/pop-before-smtp.html

Kig evt. også i mailserver-loggen for at se, hvad der går galt - så vidt jeg ved, får du ikke nogen fejl-meddelelse med over i php, hvis en email kikser!
Avatar billede tipsen Nybegynder
23. maj 2003 - 00:59 #24
ok - godt nok.
Avatar billede detox Nybegynder
23. maj 2003 - 01:01 #25
Jeg modtog nu en mail, men kontoen blev dog ikke aktiveret. c",)
Avatar billede human Nybegynder
23. maj 2003 - 01:02 #26
Detox: Nej, det var fordi jeg lige har slettet alle kontoer der lå i tabellen ;o) Men nu kan du oprette dig hvis du vil ;o)

Det var det svar...
Avatar billede detox Nybegynder
23. maj 2003 - 01:03 #27
svar
Avatar billede tipsen Nybegynder
23. maj 2003 - 01:16 #28
Du skal nok arbejde lidt med validering af de inputs du får fra din formular - prøvede at hustle den lidt (ikke *meget ;-)) og fik følgende output:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in c:\apache\htdocs\techcity\beta\register_check.php on line 68

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in c:\apache\htdocs\techcity\beta\register_check.php on line 69
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '\', '\', '\', 'f393cefa0e8ecd2dfba93bcbca9ec63d', 'asdfafffffff
Avatar billede tipsen Nybegynder
23. maj 2003 - 01:16 #29
Med lidt held vil jeg kunne hustle den så meget, at jeg kan slette dine databaser ;-)
Avatar billede human Nybegynder
23. maj 2003 - 05:13 #30
tipsen: Yesh er klar over det. Arbejder også på det med htmlspecialchars.

Hjælp mig evt. her: http://www.eksperten.dk/spm/356104
Avatar billede tipsen Nybegynder
23. maj 2003 - 09:17 #31
prøv evt. at kigge på addslashes() og stripslashes() i stedet.
Avatar billede human Nybegynder
23. maj 2003 - 21:06 #32
tipsen: Hvis du gider, kan du så ikke prøve at se om du kan finde et sikkerhedshul nu? :)
Avatar billede tipsen Nybegynder
23. maj 2003 - 21:19 #33
Kan ikke finde deciderede fejl, men der mangler validering af felterne og så vil det være rart, at man med det samme får vist formularen hvis man har lavet en fejlindtastning - altså således, at man ikke skal trykke "Tilbage"
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