php email verzending

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Danny verheyen

danny verheyen

01/11/2016 14:52:42
Quote Anchor link
beste ik heb een paar problemen met mijn website nu ik heb het volgende scriptje en dat werkt goed behalve het redirect dat werk niet hoe kan ik dit oplossen ?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<?php

$name
     = $_POST["naam"];
$email    = $_POST["Email"];
$achternaam    = $_POST["achternaam"];
$straat    = $_POST["straat"];
$gemeente    = $_POST["gemeente"];
$postcode    = $_POST["postcode"];
$naam_kindjes    = $_POST["naam kindjes"];
$leeftijd    = $_POST["leeftijd"];
$tijd    = $_POST["tijd"];
$datum    = $_POST["datum"];
$comment  = $_POST["opmerking"];
$bron     = gethostbyaddr($_SERVER['REMOTE_ADDR']);
$address  = $_SERVER["REMOTE_ADDR"];

//$name     = 'danny';
//$email    = '[email protected]';
//$comment  = 'Ingevuld veld opmerking website';
//$bron     = gethostbyaddr($_SERVER['REMOTE_ADDR']);
//$address  =  $_SERVER["REMOTE_ADDR"];


$to      = "[email protected],[email protected]";
$subject = "aanvraag sint";
$headers .="To: Webmaster <[email protected]>\r\n";
$headers .=" from Website <[email protected]>\r\n";
$headers .= 'From: ' . $email . "\r\n";
$message = "De volgende gegevens zijn door de verzender $email ingevuld:
-----------------------------------------------------------------
Naam: $name
achternaam: $achternaam
Email: $email
straat: $straat
gemeente: $gemeente
postcode: $postcode
naam_kindjes: $naam_kindjes
leeftijd: $leeftijd
tijd: $tijd
datum: $datum
Opmerking: $comment
-----------------------------------------------------------------
Technische gegevens afzender:
Servernaam: $bron
Serveradres: $address
-----------------------------------------------------------------"
;

mail($to,$subject,$message, $headers);
header("Location: http://www.desinterklaas.be/bedankt.html");
?>
 
PHP hulp

PHP hulp

29/03/2024 13:49:25
 
Frank Nietbelangrijk

Frank Nietbelangrijk

01/11/2016 18:29:45
Quote Anchor link
Hallo Danny,

Een voorwaarde voor de header functie is dat er nog geen enkele output naar de client verstuurd is.
Hierbij wordt alles buiten de <?php en de ?> tags al als output gezien, ook een spatie of carriage return bijvoorbeeld. Daarnaast zijn er enkele php functies die output genereren zoals echo en print.

Drie voorbeelden waarbij het al fout gaat:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
    
<?php // let op de carriage return

header("Location: http://www.desinterklaas.be/bedankt.html");
?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php

echo 'hoi';
header("Location: http://www.desinterklaas.be/bedankt.html");
?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<doctype!>
<html>
<?php
header("Location: http://www.desinterklaas.be/bedankt.html");
?>

</html>
Gewijzigd op 01/11/2016 18:32:56 door Frank Nietbelangrijk
 
Jan R

Jan R

02/11/2016 11:13:10
Quote Anchor link
En de bom code niet te vergeten :)
https://en.wikipedia.org/wiki/Byte_order_mark
 
Danny verheyen

danny verheyen

03/11/2016 00:12:46
Quote Anchor link
hallo Frank Nietbelangrijk

ik ben echt nieuw met php wat moet ik dan doen om dit goed werkende te maken kan u mij misschien hier stap bij stap helpen met vriendelijke groeten
Gewijzigd op 03/11/2016 00:13:34 door danny verheyen
 
- Ariën  -
Beheerder

- Ariën -

03/11/2016 00:31:03
Quote Anchor link
In je code zelf zit niks fout, maar ik denk dat dit niet alle code is, en er HTML of een -in je HTML-source- zichtbare witregel of B-O-M voor staat (vaak herkenbaar met rare tekens op je scehrm die je niet in de HTML-source ziet.)

Dus de oplossing is om geen HTML te tonen. Maar als je een location-header hebt heb je geen HTML-nodig, omdat je toch naar een andere pagina wordt doorgestuurd.
Zet er wel even een exit(); achteraan.
Gewijzigd op 03/11/2016 00:31:30 door - Ariën -
 
Ivo P

Ivo P

03/11/2016 01:08:05
Quote Anchor link
is er een foutmelding?

Als dat toevallig de headers-already-sent melding is, dan is daarin precies af te lezen wat er misgaat
 
Danny verheyen

danny verheyen

03/11/2016 21:37:12
Quote Anchor link
hallo sorry voor late response maar het redirect probleem is opgelost nu bleek het een probleem te zijn om de dat de website op een windows server draaide maar nu draait hij op linux redireckt luckt perfect maar nu heb ik een ander probleem het verzenden van berichten gaat niet :(
 
- Ariën  -
Beheerder

- Ariën -

03/11/2016 22:27:27
Quote Anchor link
Zorg eerst maar even voor goede foutafhandeling:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
if(mail($to,$subject,$message, $headers)) {
    header("Location: http://www.desinterklaas.be/bedankt.html");
    exit();
} else {
    echo "Er is een fout aan onze kans opgetreden.";
}


Nog beter is het gebruik van de phpMailer bibliotheek. Die kan via Google en andere SMTP-servers mailen, en kent betere foutafhandeling dan deze matige PHP mail-functie.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.