PHP Contact form naar Gmail's auto-respond werkt niet

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Conscience NL
  • Registratie: September 2009
  • Laatst online: 21:25
Ik heb op mijn site een contact form geïmplementeerd d.m.v. PHP. Nu heb ik als ontvanger een Gmail account ingesteld, waar ik een auto-respond bericht heb geactiveerd. Het probleem is nu dat als iemand zijn email adres invult, deze bij mijn Gmail account binnen komt als <opgegeven email adres> via web07.vhosting.pcextreme.nl (Ik host mijn website bij PCExtreme). Het probleem is dat Gmail nu geen auto-reply stuurt naar het opgegeven email adres. Als ik handmatig een mail stuur vanaf een email account in Thunderbird naar het Gmail account, krijg ik binnen een paar seconden de auto-reply mail terug.

Ik heb de volgende code gebruikt: (van http://www.1stwebdesigner...custom-php-contact-forms/)


HTML Form Code
HTML:
1
2
3
4
5
6
<form action="mail.php" method="POST">
<p>Name</p> <input type="text" name="name">
<p>Email</p> <input type="text" name="email">
<p>Message</p><textarea name="message" rows="6" cols="25"></textarea><br />
<input type="submit" value="Send"><input type="reset" value="Clear">
</form>

mail.php
PHP:
1
2
3
4
5
6
7
8
9
10
<?php $name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$formcontent="From: $name \n Message: $message";
$recipient = "[i]<het gmail account>[/i]";
$subject = "Contact Form";
$mailheader = "From: $email \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You!";
?>

Hoe los ik dit op?

[ Voor 2% gewijzigd door RobIII op 04-06-2012 10:32 ]

PS4 Pro - ConscienceNL | Nintendo Switch | LG OLED 55C7


Acties:
  • 0 Henk 'm!

  • Barryvdh
  • Registratie: Juni 2003
  • Laatst online: 12-09 14:10
Documentatie al gelezen? http://php.net/manual/en/function.mail.php
Reply-to header instellen (example 2), of eventueel de afzender instellen met extra parameter (example 3) werkt misschien?

(Edit; Ehh dit werkt misschien wel, maar is natuurlijk niet logisch, als je alleen een ontvangsbevestiging wil sturen, dan gewoon zoals mithras zegt, een 2de mail versturen via dat script)

[ Voor 33% gewijzigd door Barryvdh op 02-06-2012 16:25 ]


Acties:
  • 0 Henk 'm!

  • mithras
  • Registratie: Maart 2003
  • Niet online
De zender van de email is ook niet de bezoeker die het formulier heeft ingevuld, dat is jouw php script. Je moet dus ook niet willen faken (want dat lukt je namelijk niet) dat het toch van je bezoeker komt. Dat is ook de reden dat het niet zal lukken een auto-respond van Gmail te sturen naar de bezoeker die je contactformulier heeft ingevuld.

De beste optie is om in je applicatie de email te sturen. Je ontvangt een formulier, je stuurt het bericht door naar een (eigen) gespecificeerd adres en je stuurt een tweede email naar het emailadres wat zojuist is ingevuld. Als je dan vervolgens alle emailinstellingen goed hebt staan is er nergens verwarring wie namens wie een email heeft verzonden.

Acties:
  • 0 Henk 'm!

  • Conscience NL
  • Registratie: September 2009
  • Laatst online: 21:25
Heb het uiteindelijk opgelost door in het mail.php script een mail te sturen naar het opgegeven emailadres met als afzender mijn Gmail account (en daar weer de auto-respond uit gezet).

[ Voor 4% gewijzigd door Conscience NL op 03-06-2012 15:33 ]

PS4 Pro - ConscienceNL | Nintendo Switch | LG OLED 55C7


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Als je code post, gebruik dan voortaan code tags a.u.b. ;)
Verder: Waar hoort mijn topic?
WEB >> PRG

Tot slot wil ik je vriendelijk verzoeken onze Quickstart voortaan (beter) te hanteren bij 't openen van een topic; ik mis nu nogal wat zaken die we wél verwachten aan te treffen in een topicstart (zoals wat je zelf al geprobeerd/gezocht/gevonden hebt) en neigt dit topic wel heel sterk naar een Kan iemand even...?. Voor een volgende keer: we doen sowieso niet aan support op code van derden; daarvoor mag je bij die derden aankloppen ;)

[ Voor 95% gewijzigd door RobIII op 04-06-2012 10:36 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Kijk sowieso eens naar PHPMailer. Met de standaard mailfunctie in PHP moet je zelf vaak te veel in de gaten houden en eindig je alsnog vaak in de spamfolder van je gebruiker.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 17:03

Creepy

Tactical Espionage Splatterer

Er zitten gaten in, en flink ook. Aangezien de invoer van het e-mail adres ($_POST['email']; ) direct de $emailheaders in gaat kan iemand dus direct alle headers beinvloeden en daarmee dus spam versturen naar willekeurige adressen.

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Nog een voordeel van PHPMailer wat dat betreft, want die beveiligt daar automatisch tegen. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1