php/html script verstuurd geen email. (contact formulier)
hier onder is het script te vinden
dat is de html en nu de php
Quote:
<form name="contactform" method="post" action="send_form_email.php">
<table width="450px">
<tr>
<td valign="top">
<label for="voornaam">voornaam *</label>
</td>
<td valign="top">
<input type="text" name="voornaam" maxlength="50" size="30">
</td>
</tr>
<tr>
<td valign="top"">
<label for="achternaam">achternaam *</label>
</td>
<td valign="top">
<input type="text" name="achternaam" maxlength="50" size="30">
</td>
</tr>
<tr>
<td valign="top">
<label for="EmailAdres">Email-Adres *</label>
</td>
<td valign="top">
<input type="text" name="EmailAdres" maxlength="80" size="30">
</td>
</tr>
<tr>
<td valign="top">
<label for="telefoonnummer">telefoonnummer</label>
</td>
<td valign="top">
<input type="text" name="telefoonnummer" maxlength="30" size="30">
</td>
</tr>
<tr>
<td valign="top">
<label for="postcode">postcode</label>
</td>
<td valign="top">
<textarea name="postcode" maxlength="6" cols="25" rows="6"></textarea>
</td>
</tr>
<tr>
<tr>
<td valign="top">
<label for="straat">straat + nummer</label>
</td>
<td valign="top">
<textarea name="straat" maxlength="1000" cols="25" rows="6"></textarea>
</td>
</tr>
<tr>
<tr>
<td valign="top">
<label for="probleem">probleem</label>
</td>
<td valign="top">
<textarea name="probleem" maxlength="1000" cols="25" rows="6"></textarea>
</td>
</tr>
<tr>
<I>Op welke dagen kunnen we contact met u opnemen:</I><BR>
<BR>
<SELECT NAME="keuzen">
<OPTION>Maandag</OPTION>
<OPTION>Dinsdag</OPTION>
<OPTION>Woensdag</OPTION>
<OPTION>Donderdag</OPTION>
<OPTION>Vrijdag</OPTION>
<OPTION>Zaterdag</OPTION>
<OPTION>Zondag</OPTION>
<OPTION>alleen werkdagen</OPTION>
</SELECT>
<td colspan="2" style="text-align:center">
<input type="submit" value="Submit">
</td>
</tr>
</table>
</form>
<table width="450px">
<tr>
<td valign="top">
<label for="voornaam">voornaam *</label>
</td>
<td valign="top">
<input type="text" name="voornaam" maxlength="50" size="30">
</td>
</tr>
<tr>
<td valign="top"">
<label for="achternaam">achternaam *</label>
</td>
<td valign="top">
<input type="text" name="achternaam" maxlength="50" size="30">
</td>
</tr>
<tr>
<td valign="top">
<label for="EmailAdres">Email-Adres *</label>
</td>
<td valign="top">
<input type="text" name="EmailAdres" maxlength="80" size="30">
</td>
</tr>
<tr>
<td valign="top">
<label for="telefoonnummer">telefoonnummer</label>
</td>
<td valign="top">
<input type="text" name="telefoonnummer" maxlength="30" size="30">
</td>
</tr>
<tr>
<td valign="top">
<label for="postcode">postcode</label>
</td>
<td valign="top">
<textarea name="postcode" maxlength="6" cols="25" rows="6"></textarea>
</td>
</tr>
<tr>
<tr>
<td valign="top">
<label for="straat">straat + nummer</label>
</td>
<td valign="top">
<textarea name="straat" maxlength="1000" cols="25" rows="6"></textarea>
</td>
</tr>
<tr>
<tr>
<td valign="top">
<label for="probleem">probleem</label>
</td>
<td valign="top">
<textarea name="probleem" maxlength="1000" cols="25" rows="6"></textarea>
</td>
</tr>
<tr>
<I>Op welke dagen kunnen we contact met u opnemen:</I><BR>
<BR>
<SELECT NAME="keuzen">
<OPTION>Maandag</OPTION>
<OPTION>Dinsdag</OPTION>
<OPTION>Woensdag</OPTION>
<OPTION>Donderdag</OPTION>
<OPTION>Vrijdag</OPTION>
<OPTION>Zaterdag</OPTION>
<OPTION>Zondag</OPTION>
<OPTION>alleen werkdagen</OPTION>
</SELECT>
<td colspan="2" style="text-align:center">
<input type="submit" value="Submit">
</td>
</tr>
</table>
</form>
dat is de html en nu de php
Quote:
<!-- html -->
hoi
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
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
<?php
if(isset($_POST['email'])) {
// EDIT THE 2 LINES BELOW AS REQUIRED
$email_to = "marijn@script.net";
$email_subject = "contact formulier";
function died($error) {
// your error code can go here
echo "We are very sorry, but there were error(s) found with the form you submitted. ";
echo "These errors appear below.<br /><br />";
echo $error."<br /><br />";
echo "Please go back and fix these errors.<br /><br />";
die();
}
// validation expected data exists
if(!isset($_POST['voornaam']) ||
!isset($_POST['achternaam']) ||
!isset($_POST['EmailAdres']) ||
!isset($_POST['telefoonnummer']) ||
!isset($_POST['Postcode']) ||
!isset($_POST['Straat']) ||
!isset($_POST['Probleem']) ||
!isset($_POST['Keuzen'])) {
died('We are sorry, but there appears to be a problem with the form you submitted.');
}
$voornaam = $_POST['voornaam']; // required
$achternaam = $_POST['achternaam']; // required
$EmailAdres = $_POST['EmailAdres']; // required
$telefoonnummer = $_POST['telefoonnummer']; // required
$Postcode = $_POST['Postcode']; // required
$Straat = $_POST['Straat']; // required
$Probleem = $_POST['Probleem']; // required
$Keuzen = $_POST['Keuzen']; // required
$error_message = "";
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp,$email_from)) {
$error_message .= 'The Email Address you entered does not appear to be valid.<br />';
}
$string_exp = "/^[A-Za-z .'-]+$/";
if(!preg_match($string_exp,$voornaam)) {
$error_message .= 'The First Name you entered does not appear to be valid.<br />';
}
if(!preg_match($string_exp,$achternaam)) {
$error_message .= 'The Last Name you entered does not appear to be valid.<br />';
}
if(strlen($comments) < 2) {
$error_message .= 'The Comments you entered do not appear to be valid.<br />';
}
if(strlen($error_message) > 0) {
died($error_message);
}
$email_message = "Form details below.\n\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$email_message .= "voornaam: ".clean_string($voornaam)."\n";
$email_message .= "achternaam: ".clean_string($achternaam)."\n";
$email_message .= "email-adres ".clean_string($EmailAdres)."\n";
$email_message .= "telefoonnummer: ".clean_string($telefoonnummer)."\n";
$email_message .= "Postcode: ".clean_string($postcode)."\n";
$email_message .= "Straat: ".clean_string($straat)."\n";
$email_message .= "Probleem: ".clean_string($probleem)."\n";
$email_message .= "contactdag.: ".clean_string($Keuzen)."\n";
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);
?>
if(isset($_POST['email'])) {
// EDIT THE 2 LINES BELOW AS REQUIRED
$email_to = "marijn@script.net";
$email_subject = "contact formulier";
function died($error) {
// your error code can go here
echo "We are very sorry, but there were error(s) found with the form you submitted. ";
echo "These errors appear below.<br /><br />";
echo $error."<br /><br />";
echo "Please go back and fix these errors.<br /><br />";
die();
}
// validation expected data exists
if(!isset($_POST['voornaam']) ||
!isset($_POST['achternaam']) ||
!isset($_POST['EmailAdres']) ||
!isset($_POST['telefoonnummer']) ||
!isset($_POST['Postcode']) ||
!isset($_POST['Straat']) ||
!isset($_POST['Probleem']) ||
!isset($_POST['Keuzen'])) {
died('We are sorry, but there appears to be a problem with the form you submitted.');
}
$voornaam = $_POST['voornaam']; // required
$achternaam = $_POST['achternaam']; // required
$EmailAdres = $_POST['EmailAdres']; // required
$telefoonnummer = $_POST['telefoonnummer']; // required
$Postcode = $_POST['Postcode']; // required
$Straat = $_POST['Straat']; // required
$Probleem = $_POST['Probleem']; // required
$Keuzen = $_POST['Keuzen']; // required
$error_message = "";
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp,$email_from)) {
$error_message .= 'The Email Address you entered does not appear to be valid.<br />';
}
$string_exp = "/^[A-Za-z .'-]+$/";
if(!preg_match($string_exp,$voornaam)) {
$error_message .= 'The First Name you entered does not appear to be valid.<br />';
}
if(!preg_match($string_exp,$achternaam)) {
$error_message .= 'The Last Name you entered does not appear to be valid.<br />';
}
if(strlen($comments) < 2) {
$error_message .= 'The Comments you entered do not appear to be valid.<br />';
}
if(strlen($error_message) > 0) {
died($error_message);
}
$email_message = "Form details below.\n\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$email_message .= "voornaam: ".clean_string($voornaam)."\n";
$email_message .= "achternaam: ".clean_string($achternaam)."\n";
$email_message .= "email-adres ".clean_string($EmailAdres)."\n";
$email_message .= "telefoonnummer: ".clean_string($telefoonnummer)."\n";
$email_message .= "Postcode: ".clean_string($postcode)."\n";
$email_message .= "Straat: ".clean_string($straat)."\n";
$email_message .= "Probleem: ".clean_string($probleem)."\n";
$email_message .= "contactdag.: ".clean_string($Keuzen)."\n";
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);
?>
<!-- html -->
hoi
Gesponsorde koppelingen:
zet bovenste gedeelte wat in de qoute tekst staat ook even in de code taggs :P
ik maak die fout ook steeds leest niet handig voor de scripters
maar verstuurd niks.. geeft hij foutmelding of gaat hij niet door naar ''verzonden'' of zegt hij helemaal niks? meschien zegtie verzonden maar verzend hij niet
Als je iets meer info geeft zoekt het iets gemakkelijker
ik maak die fout ook steeds leest niet handig voor de scripters
maar verstuurd niks.. geeft hij foutmelding of gaat hij niet door naar ''verzonden'' of zegt hij helemaal niks? meschien zegtie verzonden maar verzend hij niet
Als je iets meer info geeft zoekt het iets gemakkelijker
Gewijzigd op 05/02/2012 14:16:52 door Kobar Secret
Als je op localhost zit kun je niet zomaar een e-mail versturen, dan moet wel een mail server hebben..
En anders moet je even duidelijk uitleggen wat er wel of niet goed gaat.
En anders moet je even duidelijk uitleggen wat er wel of niet goed gaat.
Of een formulier is gepost check je met:
if($_SERVER['REQUEST_METHOD'] == 'POST')
En niet, zoals jij nu doet, op een NIET bestaand formulierveld.
if($_SERVER['REQUEST_METHOD'] == 'POST')
En niet, zoals jij nu doet, op een NIET bestaand formulierveld.
haal sowieso dat apenstaartje op regel 77 weg, dan zie je tenminste de mail() foutmelding.
Hertog Jan op 05/02/2012 14:18:02:
Als je op localhost zit kun je niet zomaar een e-mail versturen, dan moet wel een mail server hebben..
En anders moet je even duidelijk uitleggen wat er wel of niet goed gaat.
En anders moet je even duidelijk uitleggen wat er wel of niet goed gaat.
Dat kan wel maar dan moet php.ini aanpassen of als op de SMTP server moet worden ingelogd bv PHPMailer gebruiken.
Los van bovenstaande opmerkingen/adviezen, ipv de mailfunctie van php wordt meestal geadviseerd om phpmailer of swiftmailer te gebruiken.
hij staat al online om te testen. hier vind je het document in html: http://j-m-ict.netii.net/J&M/contact.html, als je het formulier invult zegt hij niks meer, en ook de email krijg ik niet binnen, zouden jullie misschien aan de hand van een voorbeeld willen reageren ???
(bij het nieuwe script heb ik het apenstaartje op regel 77 weg gehaalt, en het email adres gelinkt naar de email server van de website
(bij het nieuwe script heb ik het apenstaartje op regel 77 weg gehaalt, en het email adres gelinkt naar de email server van de website
Gebruik deze code eens om de mail te versturen:
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
$mail = mail($email_to, $email_subject, $email_message, $headers);
if($mail) {
echo "De mail is verstuurd";
} else {
echo "De mail is NIET verstuurd.";
}
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
$mail = mail($email_to, $email_subject, $email_message, $headers);
if($mail) {
echo "De mail is verstuurd";
} else {
echo "De mail is NIET verstuurd.";
}
dan krijg ik een error: Parse error: syntax error, unexpected T_STRING in /home/a6405334/public_html/J&M/mail.php on line 88
en wat is regel 88?
....en daar om heen?
Ger van Steenderen op 05/02/2012 15:16:03:
Dat kan wel maar dan moet php.ini aanpassen of als op de SMTP server moet worden ingelogd bv PHPMailer gebruiken.
Hertog Jan op 05/02/2012 14:18:02:
Als je op localhost zit kun je niet zomaar een e-mail versturen, dan moet wel een mail server hebben..
En anders moet je even duidelijk uitleggen wat er wel of niet goed gaat.
En anders moet je even duidelijk uitleggen wat er wel of niet goed gaat.
Dat kan wel maar dan moet php.ini aanpassen of als op de SMTP server moet worden ingelogd bv PHPMailer gebruiken.
Dat bedoel ik met 'zomaar',dat het dus eerst ingesteld moet worden :)
Als ik op de link klik, krijgt ik een melding: You are seeing this page because the system administrator of 000webhost.com is currently checking this website for malicious content.
Kan je geen betere hosting dan 000webhost nemen Marijn?
zoals ???
- SanThe - op 05/02/2012 14:36:40:
Of een formulier is gepost check je met:
if($_SERVER['REQUEST_METHOD'] == 'POST')
En niet, zoals jij nu doet, op een NIET bestaand formulierveld.
if($_SERVER['REQUEST_METHOD'] == 'POST')
En niet, zoals jij nu doet, op een NIET bestaand formulierveld.
Heb je dit nu al gelezen?
Want dit is de fout. Het script komt helemaal niet bij het emailverzenden.



