Avatar billede futurefreak Nybegynder
10. februar 2007 - 06:56 Der er 11 kommentarer og
1 løsning

Hvordan får jeg ændret dette - header i form2mail med php

Hej E

Vha. at en script prøver jeg nu selv at udbygge dette php form2mail og det begynder stille og roligt at virke.
Jeg har nu lært at tilføje tekstfelter og checkbokse mm.

Dog undrer det mig.
Ved modtagelsen for jeg webhotellets servernavn som afsender.
Ala .. webxxxxxx.domæne.dk@web23.talkactive.net.

Hvordan kan det ændres til "Fra domæne.dk hjemmeside"?

Scriptet ser således ud:
<html>
<head><title>PHP Mail Sender</title></head>
<body>
<?php

/* All form fields are automatically passed to the PHP script through the array $HTTP_POST_VARS. */
$email = $HTTP_POST_VARS['email'];
$mailadresse = $HTTP_POST_VARS['mailadresse'];
$subject = $HTTP_POST_VARS['subject'];
$message = $HTTP_POST_VARS['message'];

/* PHP form validation: the script checks that the Email field contains a valid email address and the Subject field isn't empty. preg_match performs a regular expression match. It's a very powerful PHP function to validate form fields and other strings - see PHP manual for details. */
if (!preg_match("/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/", $mailadresse)) {
  echo "<h4>Invalid email address</h4>";
  echo "<a href='java script:history.back(1);'>Back</a>";
} elseif ($subject == "") {
  echo "<h4>No subject</h4>";
  echo "<a href='java script:history.back(1);'>Back</a>";
}

/* Sends the mail and outputs the "Thank you" string if the mail is successfully sent, or the error string otherwise. */
elseif (mail($mailadresse,$email,$subject,$message)) {
  echo "<h4>Thank you for sending email</h4>";
} else {
  echo "<h4>Can't send email to $email</h4>";
}
?>
</body>
</html>


Tillægspm:
Et redirect efter "Thank You", kan det sættes ind?
Avatar billede giorgio Nybegynder
10. februar 2007 - 07:27 #1
Jeg har lavet det på den her måde:

$header = "From: " . $_POST['sender_name'] . " <" . $_POST['sender_mail'] . ">\n";
$header .= "Reply-To: " . $_POST['sender_name'] . " <" . $_POST['sender_mail'] . ">\n";

Her indsætter den personene som udfylder formularen som afdender og som du så også kan relpy til.  Jeg har så også navn med så jeg ved hvem jeg er i kontakt med.
Avatar billede futurefreak Nybegynder
10. februar 2007 - 15:54 #2
giorgio >>
Sådan her?:

$email = $HTTP_POST_VARS['email'];
$header = "From: " . $_POST['sender_name'] . " <" . $_POST['sender_mail'] . ">\n";
$header .= "Reply-To: " . $_POST['sender_name'] . " <" . $_POST['sender_mail'] . ">\n";
$subject = $HTTP_POST_VARS['subject'];
$message = $HTTP_POST_VARS['message'];
Avatar billede giorgio Nybegynder
10. februar 2007 - 16:48 #3
Du skal så have hele din streng på: $HTTP_POST_VARS og skal du bruge name skal du selvfølgelig også have feltet i din indtastningsform.
Avatar billede futurefreak Nybegynder
10. februar 2007 - 16:52 #4
At felterne skal med i indtastningformen forstår jeg, men post-vars?

Sådan her:

$email = $HTTP_POST_VARS['email'];
$header = $HTTP_POST_VARS['fra'] . "From: " . $_POST['sender_name'] . " <" . $_POST['sender_mail'] . ">\n";
$header .= $HTTP_POST_VARS['afsendernavn'] . "Reply-To: " . $_POST['sender_name'] . " <" . $_POST['sender_mail'] . ">\n";
$subject = $HTTP_POST_VARS['subject'];
$message = $HTTP_POST_VARS['message'];


Ja, undskyld jeg spørge dumt, men jeg skal se eksembler på koden får jeg fatter php og måden den skrives på.
Avatar billede giorgio Nybegynder
10. februar 2007 - 17:07 #5
Jeg benytter: $_POST og du benytter $HTTP_POST_VARS, derfor skal du ændre til:

$header = "From: " . $HTTP_POST_VARS['sender_name'] . " <" . $HTTP_POST_VARS['sender_mail'] . ">\n";
$header .= "Reply-To: " . $HTTP_POST_VARS['sender_name'] . " <" . $HTTP_POST_VARS['sender_mail'] . ">\n";

hvad der står i ['xxxxxx'] skal du selvfølgelig ændre til dine egne så som jeg bruger sender_mail og du bruger email.

Det var det jeg mente :)
Avatar billede futurefreak Nybegynder
11. februar 2007 - 14:18 #6
Hvad er forskellen på $_POST og $HTTP_POST_VARS?
Hvilken er bedre?
Avatar billede giorgio Nybegynder
11. februar 2007 - 17:49 #7
Det ved jeg faktisk ikke. jeg trækker tada ud fra flash med denne.
Avatar billede giorgio Nybegynder
14. februar 2007 - 07:55 #8
Fik du det til at virke som det skulle?
Avatar billede futurefreak Nybegynder
14. februar 2007 - 15:42 #9
Giorgio >>
Nej, ikke rigtigt. Derfor http://www.eksperten.dk/spm/762442
Avatar billede futurefreak Nybegynder
14. februar 2007 - 15:52 #10
Men dit svar var jo rigtigt nok, jeg kunne bare ikke forstår det :-)
Avatar billede giorgio Nybegynder
16. februar 2007 - 16:58 #11
Det glæder mig, kan se at den kom vidt omkring før den hang helt korrekt sammen. Det er sq ikke altid let det here php, og slet ikke hvis man ikke er 100% inde i det, eller at betegne som nybegynder :)

Men håber da du får stor gavn af det.
Avatar billede futurefreak Nybegynder
16. februar 2007 - 22:53 #12
giorgio >>
Jo, jeg har lært meget og dag for dag kommer jeg nærmere til at forstå php og måske kunne kode det godt en dag :-)
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