simple ajax contactform probleem
Ik ben super blij met het formulier. Het is een simple ajaxt contactform die hier hier heb gedownload. Nu heb ik een "email gebruiker" optie geprogrammeerd.
Maar de emails komen allebei bij mij als webmaster binnen. Wel zijn het 2 verschillende die ik heb geprogrammeerd.
Hoop dat iemand kan helpen stoei er al 2 dagen mee:(
Hier onder de html code:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<font color="red">*</font>Voor- en achternaam: <br /> <input type="text" name="name" id="name" size=50 maxlength=50><br>
<font color="red">*</font>E-mailadres:<br /> <input type="text" name="email" id="email" size=50 maxlength=50><br>
<font color="red">*</font>Onderwerp:<br /> <input type="text" name="subject" id="subject" size=50 maxlength=50><br>
Bericht:<br /> <textarea rows="10" cols="50" name="message" id="message"></textarea><br>
<input type="button" value="Versturen" class="button" onClick="checkform(document.getElementById('name').value, document.getElementById('email').value, document.getElementById('subject').value, document.getElementById('message').value)" />
<input type="reset" value="Reset" class="button" />
<font color="red">*</font>Bevestigings mail? <input type="checkbox" name="check" value='1' checked><br><br> </form>
<font color="red">*</font>E-mailadres:<br /> <input type="text" name="email" id="email" size=50 maxlength=50><br>
<font color="red">*</font>Onderwerp:<br /> <input type="text" name="subject" id="subject" size=50 maxlength=50><br>
Bericht:<br /> <textarea rows="10" cols="50" name="message" id="message"></textarea><br>
<input type="button" value="Versturen" class="button" onClick="checkform(document.getElementById('name').value, document.getElementById('email').value, document.getElementById('subject').value, document.getElementById('message').value)" />
<input type="reset" value="Reset" class="button" />
<font color="red">*</font>Bevestigings mail? <input type="checkbox" name="check" value='1' checked><br><br> </form>
Hier het PHP script. Hoop dat iemand kan helpen.
Code (php)
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
<?php
/* CONFIG
----------*/
// WEBMASTERS EMAIL
$target = "[email protected]";
// WEBMASTERS NAME
$targetname = "Voorbeeld";
// ENABLE SUBJECT PREFIX (true or false)
$subjprefixe = true; // SET TO FALSE TO DISABLE PREFIX
// SUBJECT PREFIX
$subjprefix = "Bericht website ----";
/* VARIABLES
-------------*/
$name = $_GET['name'];
$email = $_GET['email'];
$subject = $_GET['subject'];
$subject = $_GET['subject'];
$content = $_GET['content'];
/* CHECKING DETAILS
--------------------*/
if(empty($name) && empty($email) && empty($subject) && empty($content)) {
echo '<span id="error">Vul alstublieft alle velden in.</span>';
}
elseif(empty($name)) {
echo '<span id="error">Vul alstublieft uw naam in.</span>';
}
elseif(empty($email)) {
echo '<span id="error">Vul alstublieft uw emailadres in.</span>';
}
elseif(empty($subject)) {
echo '<span id="error">Vul alstublieft een onderwerp in.</span>';
}
elseif(empty($content)) {
echo '<span id="error">Vul alstublieft een bericht in.</span>';
}
elseif(!preg_match( "/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/", $email)) {
echo '<span id="error">Vul alstublieft een correct email adres in.</span>';
}
elseif(strlen($name) < 3) {
echo '<span id="error">Uw naam moet langer zijn dan 3 karkaters.</span>';
}
elseif(strlen($email) < 9) {
echo '<span id="error">Uw email-adres kan niet korter zijn dan 9 karkaters.</span>';
}
elseif(strlen($subject) < 3) {
echo '<span id="error">Het onderwerp moet langer zijn dan 3 karkaters.</span>';
}
elseif(strlen($content) < 15) {
echo '<span id="error">Het bericht moet langer zijn dan 15 karkaters.</span>';
}
else {
/* EMAIL
---------*/
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'To: ' . $targetname . ' <' . $target . '>' . "\r\n";
// TARGET EMAIL AS SENDER TO MAKE SURE IT'S NOT IN THE SPAM FOLDER
$headers .= 'From: ' . $targetname . ' <' . $target . '>' . "\r\n";
$headers .= 'Reply-To: ' . $email . ' <' . $target . '>' . "\r\n";
if($subjprefixe == true) {
$subject = $subjprefix . " " . $subject;
}
$message = '
<html>
<head>
<title>' . $subject . '</title>
<style type="text/css">
body, td {
font-family: Lucida Grande, Lucida Sans Unicode, sans-serif;
font-size: 12px;
color: #444;
background: #EEE;
}
</style>
</head>
<body>
<p>
(Mailtje webmaster)
<br/><br/>
<b>Afzender:</b> ' . $name . ' <' . $email . '><br />
<b>Onderwerp:</b> ' . $subject . '<br />
<b>Bericht:</b><br />' . nl2br($content) . '
</p>
<p>--<br />Bericht verstuurd op ' . date("d/m/Y H:i:s") . '</p>
</body>
</html>
';
$message2 = '
<html>
<head>
<title>' . $subject . '</title>
<style type="text/css">
body, td {
font-family: Lucida Grande, Lucida Sans Unicode, sans-serif;
font-size: 12px;
color: #444;
background: #EEE;
}
</style>
</head>
<body>
(mailtje naar gebruiker)
naam '.$name.'<br/>
onderwerp '.$subject.'<br/>
email : '.$email.'<br/>
bericht :<br/>
'.nl2br($content).'
</body>
</html>
';
if(mail("[email protected]", "Berich website --- (".$_SERVER['REMOTE_ADDR'].")", $message2, $headers)){
if($check == "1"){
mail($email, "Bericht website ----", $message, $headers);
}
}
if(mail($target, $subject, $message, $headers)) {
echo '<span id="success">Bericht is verstuurd</span>';
}
else {
echo '<span id="error">Er is iets fout gegaan. Probeer het later nog eens.</span>';
}
}
?>
/* CONFIG
----------*/
// WEBMASTERS EMAIL
$target = "[email protected]";
// WEBMASTERS NAME
$targetname = "Voorbeeld";
// ENABLE SUBJECT PREFIX (true or false)
$subjprefixe = true; // SET TO FALSE TO DISABLE PREFIX
// SUBJECT PREFIX
$subjprefix = "Bericht website ----";
/* VARIABLES
-------------*/
$name = $_GET['name'];
$email = $_GET['email'];
$subject = $_GET['subject'];
$subject = $_GET['subject'];
$content = $_GET['content'];
/* CHECKING DETAILS
--------------------*/
if(empty($name) && empty($email) && empty($subject) && empty($content)) {
echo '<span id="error">Vul alstublieft alle velden in.</span>';
}
elseif(empty($name)) {
echo '<span id="error">Vul alstublieft uw naam in.</span>';
}
elseif(empty($email)) {
echo '<span id="error">Vul alstublieft uw emailadres in.</span>';
}
elseif(empty($subject)) {
echo '<span id="error">Vul alstublieft een onderwerp in.</span>';
}
elseif(empty($content)) {
echo '<span id="error">Vul alstublieft een bericht in.</span>';
}
elseif(!preg_match( "/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/", $email)) {
echo '<span id="error">Vul alstublieft een correct email adres in.</span>';
}
elseif(strlen($name) < 3) {
echo '<span id="error">Uw naam moet langer zijn dan 3 karkaters.</span>';
}
elseif(strlen($email) < 9) {
echo '<span id="error">Uw email-adres kan niet korter zijn dan 9 karkaters.</span>';
}
elseif(strlen($subject) < 3) {
echo '<span id="error">Het onderwerp moet langer zijn dan 3 karkaters.</span>';
}
elseif(strlen($content) < 15) {
echo '<span id="error">Het bericht moet langer zijn dan 15 karkaters.</span>';
}
else {
---------*/
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'To: ' . $targetname . ' <' . $target . '>' . "\r\n";
// TARGET EMAIL AS SENDER TO MAKE SURE IT'S NOT IN THE SPAM FOLDER
$headers .= 'From: ' . $targetname . ' <' . $target . '>' . "\r\n";
$headers .= 'Reply-To: ' . $email . ' <' . $target . '>' . "\r\n";
if($subjprefixe == true) {
$subject = $subjprefix . " " . $subject;
}
$message = '
<html>
<head>
<title>' . $subject . '</title>
<style type="text/css">
body, td {
font-family: Lucida Grande, Lucida Sans Unicode, sans-serif;
font-size: 12px;
color: #444;
background: #EEE;
}
</style>
</head>
<body>
<p>
(Mailtje webmaster)
<br/><br/>
<b>Afzender:</b> ' . $name . ' <' . $email . '><br />
<b>Onderwerp:</b> ' . $subject . '<br />
<b>Bericht:</b><br />' . nl2br($content) . '
</p>
<p>--<br />Bericht verstuurd op ' . date("d/m/Y H:i:s") . '</p>
</body>
</html>
';
$message2 = '
<html>
<head>
<title>' . $subject . '</title>
<style type="text/css">
body, td {
font-family: Lucida Grande, Lucida Sans Unicode, sans-serif;
font-size: 12px;
color: #444;
background: #EEE;
}
</style>
</head>
<body>
(mailtje naar gebruiker)
naam '.$name.'<br/>
onderwerp '.$subject.'<br/>
email : '.$email.'<br/>
bericht :<br/>
'.nl2br($content).'
</body>
</html>
';
if(mail("[email protected]", "Berich website --- (".$_SERVER['REMOTE_ADDR'].")", $message2, $headers)){
if($check == "1"){
mail($email, "Bericht website ----", $message, $headers);
}
}
if(mail($target, $subject, $message, $headers)) {
echo '<span id="success">Bericht is verstuurd</span>';
}
else {
echo '<span id="error">Er is iets fout gegaan. Probeer het later nog eens.</span>';
}
}
?>
Code-tags toegevoegd.[/modedit]
Gewijzigd op 24/01/2011 20:41:05 door Jens V
Ben er overigens zelf ook achter gekomen dat het in de headers zit:)
Bedankt alvast!
Zou jij dat kunnen doen Santhe?
Toevoeging op 24/01/2011 21:30:20:
Dankjwel maar het lukt mij niet om het in de headers te ztten.
Zou jij dat kunnen doen Santhe?
Zie mijn reactie op je andere post
dit ipv de headers die je nu hebt:
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?php
$headers = 'From: ' . $targetname . ' <' . $target . '>' . PHP_EOL;
$headers .= 'Reply-To: ' . $targetname . ' <' . $target . '>' . PHP_EOL;
$headers .= 'Return-Path: Mail-Error <' . $target . '>' . PHP_EOL;
$headers .= 'X-Mailer: PHP/' . phpversion() . PHP_EOL;
$headers .= 'X-Priority: Normal' . PHP_EOL;
$headers .= 'MIME-Version: 1.0' . PHP_EOL;
$headers .= 'Content-type: text/html; charset=iso-8859-1';
?>
$headers = 'From: ' . $targetname . ' <' . $target . '>' . PHP_EOL;
$headers .= 'Reply-To: ' . $targetname . ' <' . $target . '>' . PHP_EOL;
$headers .= 'Return-Path: Mail-Error <' . $target . '>' . PHP_EOL;
$headers .= 'X-Mailer: PHP/' . phpversion() . PHP_EOL;
$headers .= 'X-Priority: Normal' . PHP_EOL;
$headers .= 'MIME-Version: 1.0' . PHP_EOL;
$headers .= 'Content-type: text/html; charset=iso-8859-1';
?>
correct me if this is wrong...
Wat zou het nu kunnen zijn?
Ik denk dat je zoiets bedoeld:
P1 vult het contact formulier in
Het word verstuurd naar p2 p1 krijgt een bevestigingsformulier dat alles goed is ingevuld en dat hij binnen ... Dagen word beantwoord
Klopt dit?
mail() en dan de eerste parameter.
Zie Ikzelf krijg zijn en het mailtje naar de webmaster(ik dus) binnen.
@sonny klopt mijn verhaal nou of niet?
Hoop dat het iemand gaat lukken.
Toevoeging op 24/01/2011 21:56:55:
Jordi kroon op 24/01/2011 21:55:03:
@sonny klopt mijn verhaal nou of niet?
Ik heb geen idee waar de fout zit Jordi.. ben er al dagen mee bezig met dit ene puntje..dat ik steeds 2 mails binnekrijg. De naar de webmaster en naar de contactformulier gebruiker.
@Sonny le leest niet wat ik schrijf ik bedoel klopt mijn verhaal met wat jij wilt dat het zou moeten doen
Alleen is alles al geprogrammeerd zoals je boven ziet. Maar ik krijg dus de mail binnen van de contactformulier gebruiker. De is het enige wat niet goed is nu:(
Ik zoU zelf met swiftmailer werken het is veiliger en overzichtelijk
Ook is dit script niet helemaal 100 ik zou er wel 1 kunnen maken tegen een klein prijsje
Pm maar als je interesse hebt:)
En gewoon een fijn sript.
Ik denk dat ik overnieuw ga beginnen met het toevoegen van de -mail to yourself fucntie- als het niemand lukt.
Toevoeging op 24/01/2011 23:22:25:
if($check == "1"){
mail($email, "Bericht website ", $message, $headers);
}
}
Gewijzigd op 24/01/2011 23:22:45 door Sonny van de Berg
Gewijzigd op 25/01/2011 00:09:52 door - SanThe -