Data uit PHP formulier kopieren naar een ander formulier
Ik ben opzoek naar de mogelijkheid om data die ingevoerd wordt in het contactformulier te kopiëren naar een PHP formulier op een andere pagina.
Zover werkt het onderstaande formulier dat de gegevens opgeslagen worden in een database en via de mail verstuurd worden. Echter wil ik deze functie uitbreiden dat de data ook terecht komt in een PHP formulier op een andere pagina.
Alle hulp wordt zeer gewaardeerd :)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<form id="ContactForm" action="">
<tr>
<td align="right" style="padding-right:25px;" width="140px"> </td><td><font size="-2">* Gelieve alle velden in te vullen.</font></td>
</tr>
<tr>
<td align="right" style="padding-right:25px;" width="140px">Contactpersoon<font size="-2" style="vertical-align:top;">*</font></td><td><input id="contactpersoon" name="contactpersoon" class="inplaceError" maxlength="120" type="text" class="error" autocomplete="off" onFocus="window.scrollTo(0, 0);"/><span class="error" style="display:none; margin-left:6px;"></span></td>
</tr>
<tr>
<td align="right" style="padding-right:25px;" width="140px">Bedrijfsnaam<font size="-2" style="vertical-align:top;">*</font></td><td><input id="bedrijfsnaam" name="bedrijfsnaam" class="inplaceError" maxlength="120" type="text" autocomplete="off" onFocus="window.scrollTo(0, 0);"/><span class="error" style="display:none; margin-left:6px;"></span></td>
</tr>
<tr>
<td align="right" style="padding-right:25px;" width="140px">E-mail<font size="-2" style="vertical-align:top;">*</font></td><td><input id="email" name="email" class="inplaceError" maxlength="120" type="text" autocomplete="off" onFocus="window.scrollTo(0, 0);"/><span class="error" style="display:none; margin-left:6px;"></span></td>
</tr>
<tr>
<td align="right" style="padding-right:25px;" width="140px">Telefoonnummer<font size="-2" style="vertical-align:top;">*</font></td><td><input id="telefoon" name="telefoon" class="inplaceError" maxlength="120" type="text" autocomplete="off" onFocus="window.scrollTo(0, 0);"/><span class="error" style="display:none; margin-left:6px;"></span></td>
</tr>
<tr>
<td align="right" style="padding-right:25px;" width="140px"> </td><td><input class="button_verzenden black" id="send" type="button" value="START"/><input id="newcontact" name="newcontact" type="hidden" value="1"></input></td>
</tr>
</form>
<tr>
<td align="right" style="padding-right:25px;" width="140px"> </td><td><font size="-2">* Gelieve alle velden in te vullen.</font></td>
</tr>
<tr>
<td align="right" style="padding-right:25px;" width="140px">Contactpersoon<font size="-2" style="vertical-align:top;">*</font></td><td><input id="contactpersoon" name="contactpersoon" class="inplaceError" maxlength="120" type="text" class="error" autocomplete="off" onFocus="window.scrollTo(0, 0);"/><span class="error" style="display:none; margin-left:6px;"></span></td>
</tr>
<tr>
<td align="right" style="padding-right:25px;" width="140px">Bedrijfsnaam<font size="-2" style="vertical-align:top;">*</font></td><td><input id="bedrijfsnaam" name="bedrijfsnaam" class="inplaceError" maxlength="120" type="text" autocomplete="off" onFocus="window.scrollTo(0, 0);"/><span class="error" style="display:none; margin-left:6px;"></span></td>
</tr>
<tr>
<td align="right" style="padding-right:25px;" width="140px">E-mail<font size="-2" style="vertical-align:top;">*</font></td><td><input id="email" name="email" class="inplaceError" maxlength="120" type="text" autocomplete="off" onFocus="window.scrollTo(0, 0);"/><span class="error" style="display:none; margin-left:6px;"></span></td>
</tr>
<tr>
<td align="right" style="padding-right:25px;" width="140px">Telefoonnummer<font size="-2" style="vertical-align:top;">*</font></td><td><input id="telefoon" name="telefoon" class="inplaceError" maxlength="120" type="text" autocomplete="off" onFocus="window.scrollTo(0, 0);"/><span class="error" style="display:none; margin-left:6px;"></span></td>
</tr>
<tr>
<td align="right" style="padding-right:25px;" width="140px"> </td><td><input class="button_verzenden black" id="send" type="button" value="START"/><input id="newcontact" name="newcontact" type="hidden" value="1"></input></td>
</tr>
</form>
Graag in het vervolg bij code, [code] [/code] tags gebruiken.[/modedit]
Gewijzigd op 22/08/2012 14:51:46 door Bas IJzelendoorn
Bijvoorbeeld action="verwerk.php".
Dan verzend je de mail in verwerk.php, en ook maak je daar de insert in je database met de zelfde gegevens uit $_POST.
Toevoeging op 09/08/2012 09:39:41:
En waarom heb je inline css voor je tabel?
Je kunt ook gewoon dit in je css sheet zetten
td {
align: left;
padding-right: 25px;
width: 140px;
}
Wil je het dan ooit anders hebben hoef je maar 1 stukje aan te passen ipv elke regel.
Over de action functie gesproken, ik heb nu een contact.php waarin alle gegevens staan om de e-mail te versturen. Echter om de data toe te voegen in de database heb ik een db.php bestand (zie hieronder).
Kan ik niet hierin aangeven dat de data ook naar een fomulier moet op een andere pagina?
Quote:
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
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
<?php
require_once("config.php"); /* Configuration File */
class DB{
private $link;
public function __construct(){
$this->link = mysqli_connect(DB_SERVER, DB_USER, DB_PASS,DB_NAME);
if (mysqli_connect_errno())
exit();
}
public function __destruct() {
mysqli_close($this->link);
}
public function dbNewMessage($contactpersoon,$bedrijfsnaam,$email,$telefoon){
$contactpersoon = mysqli_real_escape_string($this->link,$contactpersoon);
$bedrijfsnaam = mysqli_real_escape_string($this->link,$bedrijfsnaam);
$email = mysqli_real_escape_string($this->link,$email);
$telefoon = mysqli_real_escape_string($this->link,$telefoon);
mysqli_autocommit($this->link,FALSE);
$query = "INSERT INTO aanmeldingen_formulier(pk_contact,contactpersoon,bedrijfsnaam,email,telefoon)
VALUES('NULL','$contactpersoon','$bedrijfsnaam','$email','$telefoon')";
mysqli_query($this->link,$query);
if(mysqli_errno($this->link))
return -1;
else{
mysqli_commit($this->link);
return 1;
}
}
};
?>
require_once("config.php"); /* Configuration File */
class DB{
private $link;
public function __construct(){
$this->link = mysqli_connect(DB_SERVER, DB_USER, DB_PASS,DB_NAME);
if (mysqli_connect_errno())
exit();
}
public function __destruct() {
mysqli_close($this->link);
}
public function dbNewMessage($contactpersoon,$bedrijfsnaam,$email,$telefoon){
$contactpersoon = mysqli_real_escape_string($this->link,$contactpersoon);
$bedrijfsnaam = mysqli_real_escape_string($this->link,$bedrijfsnaam);
$email = mysqli_real_escape_string($this->link,$email);
$telefoon = mysqli_real_escape_string($this->link,$telefoon);
mysqli_autocommit($this->link,FALSE);
$query = "INSERT INTO aanmeldingen_formulier(pk_contact,contactpersoon,bedrijfsnaam,email,telefoon)
VALUES('NULL','$contactpersoon','$bedrijfsnaam','$email','$telefoon')";
mysqli_query($this->link,$query);
if(mysqli_errno($this->link))
return -1;
else{
mysqli_commit($this->link);
return 1;
}
}
};
?>
Tevens raad ik het ook aan om je variabelen te escapen in je query op deze manier
Code (php)
1
2
3
2
3
<?php
"VALUES('NULL','".$contactpersoon."','".$bedrijfsnaam."','".$email."','".$telefoon."')";
?>
"VALUES('NULL','".$contactpersoon."','".$bedrijfsnaam."','".$email."','".$telefoon."')";
?>
Je kunt dit hele stuk gewoon in je contact.php zetten, en het daar ook verwerken. Of het php gedeelte van contact.php in je db.php zetten.
Gewijzigd op 09/08/2012 09:56:49 door Chris PHP
Quote:
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
144
145
146
147
148
149
150
151
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
144
145
146
147
148
149
150
151
<?php
require_once("db.php"); /* Database Class */
require_once('utils/is_email.php'); /* Email Validation Script */
/* Handle Ajax Request */
if(isset($_POST['newcontact'])){
$contact = new Contact();
unset($contact);
}
else{
header('Location: /');
}
/* Class Contact */
class Contact{
private $db; /* the database obj */
private $errors = array(); /* holds error messages */
private $num_errors; /* number of errors in submitted form */
public function __construct(){
$this->db = new DB();
if(isset($_POST['newcontact']))
$this->processNewMessage();
else
header("Location: /");
}
public function processNewMessage(){
$contactpersoon = $_POST['contactpersoon'];
$bedrijfsnaam = $_POST['bedrijfsnaam'];
$telefoon = $_POST['telefoon'];
$email = $_POST['email'];
/* Server Side Data Validation */
/* Contactpersoon Validation */
if(!$contactpersoon || mb_strlen($contactpersoon = trim($contactpersoon)) == 0)
$this->setError('contactpersoon', 'Vul uw contactpersoon in');
else if(mb_strlen(trim($contactpersoon)) > 120)
$this->setError('contactpersoon', 'Te lang! 120 karakters max.');
/* Bedrijfsnaam Validation */
if(!$bedrijfsnaam || mb_strlen($bedrijfsnaam = trim($bedrijfsnaam)) == 0)
$this->setError('bedrijfsnaam', 'Vul uw bedrijfsnaam in');
else if(mb_strlen(trim($bedrijfsnaam)) > 120)
$this->setError('bedrijfsnaam', 'Te lang! 120 karakters max.');
/* Telefoon Validation */
if(!$telefoon || mb_strlen($telefoon = trim($telefoon)) == 0)
$this->setError('telefoon', 'Vul uw telefoonnummer in');
else if(mb_strlen(trim($telefoon)) > 120)
$this->setError('telefoon', 'Te lang! 120 karakters max.');
/* Email Validation */
if(!$email || mb_strlen($email = trim($email)) == 0)
$this->setError('email','Vul uw e-mail in');
else{
if(!is_email($email))
$this->setError('email', 'Vul een correct email adres in');
else if(mb_strlen($email) > 120)
$this->setError('email', 'Te lang! 120 karakters max.');
}
/* Errors exist */
if($this->countErrors() > 0){
$json = array(
'result' => -1,
'errors' => array(
array('name' => 'contactpersoon' ,'value' => $this->error_value('contactpersoon')),
array('name' => 'bedrijfsnaam' ,'value' => $this->error_value('bedrijfsnaam')),
array('name' => 'email' ,'value' => $this->error_value('email')),
array('name' => 'telefoon' ,'value' => $this->error_value('telefoon')),
)
);
$encoded = json_encode($json);
echo $encoded;
unset($encoded);
}
/* No errors, insert in db*/
else{
if(($ret = $this->db->dbNewMessage($contactpersoon, $bedrijfsnaam, $email, $telefoon)) > 0){
$json = array('result' => 1);
if(SEND_EMAIL)
$this->sendEmail($contactpersoon,$bedrijfsnaam,$email,$telefoon);
}
else
$json = array('result' => -2); /* something went wrong in database insertion */
$encoded = json_encode($json);
echo $encoded;
unset($encoded);
}
}
public function sendEmail($contactpersoon,$bedrijfsnaam,$email,$telefoon){
/* Just format the email text the way you want ... */
$message_body = "<div style=\"font-size:12px; font-weight:normal;\">Hallo,<br><br>"
."Het volgende persoon heeft zich zojuist aangemeld:</div><br>"
."<table cellpadding=\"1\" cellspacing=\"1\" width=\"550px\"><tr><td style=\"font-size:12px; color:#000000\">Bedrijfsnaam:</td><td style=\"font-size:12px; color:#000000\">".$bedrijfsnaam."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Contactpersoon:</td><td style=\"font-size:12px; color:#000000\">".$contactpersoon."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Telefoonnummer:</td><td style=\"font-size:12px; color:#000000\">".$telefoon."</td></tr><tr><td style=\"font-size:12px; color:#000000\">E-mail:</td><td style=\"font-size:12px; color:#000000\">".$email."</td></tr></table><br>";
// Geef GELDIGE adressen op
// Een korte benaming voor jouw website
$website_naam = 'Aanmelding';
// Jouw eigen geldige emailadres
$eigen_emailadres = 'EMAIL ADRES';
// Een geldig emailadres voor errors
$error_emailadres = 'EMAIL ADRES';
// De naam van de verzender
$naam_verzender = ''.$bedrijfsnaam.'';
// Het geldige emailadres van de afzender
$email_verzender = ''.$email.'';
// Een geldig emailadres of helemaal leeg laten
$bcc_emailadres = '';
// HTML mail? True/False
$html = true;
// De headers samenstellen
$headers = 'From: ' . $website_naam . ' <' . $eigen_emailadres . '>' . PHP_EOL;
$headers .= 'Reply-To: ' . $naam_verzender . ' <' . $email_verzender . '>' . PHP_EOL;
$headers .= 'Return-Path: Mail-Error <' . $error_emailadres . '>' . PHP_EOL;
$headers .= ($bcc_emailadres != '') ? 'Bcc: ' . $bcc_emailadres . PHP_EOL : '';
$headers .= 'X-Mailer: PHP/' . phpversion() . PHP_EOL;
$headers .= 'X-Priority: Normal' . PHP_EOL;
$headers .= ($html) ? 'MIME-Version: 1.0' . PHP_EOL : '';
$headers .= ($html) ? 'Content-type: text/html; charset=iso-8859-1' . PHP_EOL : '';
mail(EMAIL_TO,MESSAGE_SUBJECT,$message_body,$headers);
}
public function setError($field, $errmsg){
$this->errors[$field] = $errmsg;
$this->num_errors = count($this->errors);
}
public function error_value($field){
if(array_key_exists($field,$this->errors))
return $this->errors[$field];
else
return '';
}
public function countErrors(){
return $this->num_errors;
}
};
?>
require_once("db.php"); /* Database Class */
require_once('utils/is_email.php'); /* Email Validation Script */
/* Handle Ajax Request */
if(isset($_POST['newcontact'])){
$contact = new Contact();
unset($contact);
}
else{
header('Location: /');
}
/* Class Contact */
class Contact{
private $db; /* the database obj */
private $errors = array(); /* holds error messages */
private $num_errors; /* number of errors in submitted form */
public function __construct(){
$this->db = new DB();
if(isset($_POST['newcontact']))
$this->processNewMessage();
else
header("Location: /");
}
public function processNewMessage(){
$contactpersoon = $_POST['contactpersoon'];
$bedrijfsnaam = $_POST['bedrijfsnaam'];
$telefoon = $_POST['telefoon'];
$email = $_POST['email'];
/* Server Side Data Validation */
/* Contactpersoon Validation */
if(!$contactpersoon || mb_strlen($contactpersoon = trim($contactpersoon)) == 0)
$this->setError('contactpersoon', 'Vul uw contactpersoon in');
else if(mb_strlen(trim($contactpersoon)) > 120)
$this->setError('contactpersoon', 'Te lang! 120 karakters max.');
/* Bedrijfsnaam Validation */
if(!$bedrijfsnaam || mb_strlen($bedrijfsnaam = trim($bedrijfsnaam)) == 0)
$this->setError('bedrijfsnaam', 'Vul uw bedrijfsnaam in');
else if(mb_strlen(trim($bedrijfsnaam)) > 120)
$this->setError('bedrijfsnaam', 'Te lang! 120 karakters max.');
/* Telefoon Validation */
if(!$telefoon || mb_strlen($telefoon = trim($telefoon)) == 0)
$this->setError('telefoon', 'Vul uw telefoonnummer in');
else if(mb_strlen(trim($telefoon)) > 120)
$this->setError('telefoon', 'Te lang! 120 karakters max.');
/* Email Validation */
if(!$email || mb_strlen($email = trim($email)) == 0)
$this->setError('email','Vul uw e-mail in');
else{
if(!is_email($email))
$this->setError('email', 'Vul een correct email adres in');
else if(mb_strlen($email) > 120)
$this->setError('email', 'Te lang! 120 karakters max.');
}
/* Errors exist */
if($this->countErrors() > 0){
$json = array(
'result' => -1,
'errors' => array(
array('name' => 'contactpersoon' ,'value' => $this->error_value('contactpersoon')),
array('name' => 'bedrijfsnaam' ,'value' => $this->error_value('bedrijfsnaam')),
array('name' => 'email' ,'value' => $this->error_value('email')),
array('name' => 'telefoon' ,'value' => $this->error_value('telefoon')),
)
);
$encoded = json_encode($json);
echo $encoded;
unset($encoded);
}
/* No errors, insert in db*/
else{
if(($ret = $this->db->dbNewMessage($contactpersoon, $bedrijfsnaam, $email, $telefoon)) > 0){
$json = array('result' => 1);
if(SEND_EMAIL)
$this->sendEmail($contactpersoon,$bedrijfsnaam,$email,$telefoon);
}
else
$json = array('result' => -2); /* something went wrong in database insertion */
$encoded = json_encode($json);
echo $encoded;
unset($encoded);
}
}
public function sendEmail($contactpersoon,$bedrijfsnaam,$email,$telefoon){
/* Just format the email text the way you want ... */
$message_body = "<div style=\"font-size:12px; font-weight:normal;\">Hallo,<br><br>"
."Het volgende persoon heeft zich zojuist aangemeld:</div><br>"
."<table cellpadding=\"1\" cellspacing=\"1\" width=\"550px\"><tr><td style=\"font-size:12px; color:#000000\">Bedrijfsnaam:</td><td style=\"font-size:12px; color:#000000\">".$bedrijfsnaam."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Contactpersoon:</td><td style=\"font-size:12px; color:#000000\">".$contactpersoon."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Telefoonnummer:</td><td style=\"font-size:12px; color:#000000\">".$telefoon."</td></tr><tr><td style=\"font-size:12px; color:#000000\">E-mail:</td><td style=\"font-size:12px; color:#000000\">".$email."</td></tr></table><br>";
// Geef GELDIGE adressen op
// Een korte benaming voor jouw website
$website_naam = 'Aanmelding';
// Jouw eigen geldige emailadres
$eigen_emailadres = 'EMAIL ADRES';
// Een geldig emailadres voor errors
$error_emailadres = 'EMAIL ADRES';
// De naam van de verzender
$naam_verzender = ''.$bedrijfsnaam.'';
// Het geldige emailadres van de afzender
$email_verzender = ''.$email.'';
// Een geldig emailadres of helemaal leeg laten
$bcc_emailadres = '';
// HTML mail? True/False
$html = true;
// De headers samenstellen
$headers = 'From: ' . $website_naam . ' <' . $eigen_emailadres . '>' . PHP_EOL;
$headers .= 'Reply-To: ' . $naam_verzender . ' <' . $email_verzender . '>' . PHP_EOL;
$headers .= 'Return-Path: Mail-Error <' . $error_emailadres . '>' . PHP_EOL;
$headers .= ($bcc_emailadres != '') ? 'Bcc: ' . $bcc_emailadres . PHP_EOL : '';
$headers .= 'X-Mailer: PHP/' . phpversion() . PHP_EOL;
$headers .= 'X-Priority: Normal' . PHP_EOL;
$headers .= ($html) ? 'MIME-Version: 1.0' . PHP_EOL : '';
$headers .= ($html) ? 'Content-type: text/html; charset=iso-8859-1' . PHP_EOL : '';
mail(EMAIL_TO,MESSAGE_SUBJECT,$message_body,$headers);
}
public function setError($field, $errmsg){
$this->errors[$field] = $errmsg;
$this->num_errors = count($this->errors);
}
public function error_value($field){
if(array_key_exists($field,$this->errors))
return $this->errors[$field];
else
return '';
}
public function countErrors(){
return $this->num_errors;
}
};
?>
Gewijzigd op 09/08/2012 10:39:13 door Chris PHP
Sebastian Veldman op 09/08/2012 10:03:02:
/* Handle Ajax Request */
if(isset($_POST['newcontact'])){
$contact = new Contact();
unset($contact);
}
else{
header('Location: /');
}
// ... knip ...
$encoded = json_encode($json);
echo $encoded;
unset($encoded);
if(isset($_POST['newcontact'])){
$contact = new Contact();
unset($contact);
}
else{
header('Location: /');
}
// ... knip ...
$encoded = json_encode($json);
echo $encoded;
unset($encoded);
Begrijp ik hieruit dat je dit via een Ajax request doet? Prima natuurlijk, maar dan kan je niet zomaar even de oplossing die Chris aanbiedt toepassen. En als het zo is had je dat misschien in je eerste post even moeten zeggen....
Goed punt, dat stukje heb ik over het hoofd gezien.
@Sebastian,
Is er een speciale reden dat je een AJAX request gebruikt?
Dit is een basis script die ik altijd hanteer. Ik gebruik AJAX vanwege het uploaden naar Mysql database, validatie en bevestiging pagina denk ik zo..
Ok, ik werk zelf voor dit soort dingen eigenlijk nooit met AJAX maar gewoon puur php/html.
Bedankt voor jullie reactie! :)
Geen probleem, is het gelukt?
Ik werk nu met onderstaande bestanden, echter krijg ik de data niet in de tabel van RESULT.PHP. In mijn optiek dien ik met een GET of POST functie te werken toch? Wat dien ik in contact.php aan te maken zodat de gewenste gegevens overgezet worden naar RESULT.PHP? De action en method van QUIZ.PHP lijken mij goed?
QUIZ.PHP
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
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
<table width="675px" cellpadding="0" cellspacing="0">
<form id="ContactForm" action="php/contact.php" method="post">
<tr>
<td class="left_td">Aanhef<font size="-2" style="vertical-align:top;">*</font></td><td><label class="label_aanhef" for="aanhef_1"><input name="aanhef" id="aanhef_1" value="Dhr." type="radio" /> Dhr.</label><label class="label_aanhef" for="aanhef_2"><input name="aanhef" id="aanhef_2" value="Mevr." type="radio" /> Mevr.</label></td>
</tr>
<tr class="rij_contactpersoon">
<td class="left_td">Contactpersoon<font size="-2" style="vertical-align:top;">*</font></td><td><input id="contactpersoon" name="contactpersoon" class="inplaceError" maxlength="120" type="text" class="error" autocomplete="off" onFocus="window.scrollTo(0, 0);"/></td>
</tr>
<tr class="rij_bedrijf">
<td class="left_td">Bedrijfsnaam<font size="-2" style="vertical-align:top;">*</font></td><td><input id="bedrijfsnaam" name="bedrijfsnaam" class="inplaceError" maxlength="120" type="text" autocomplete="off" onFocus="window.scrollTo(0, 0);"/></td>
</tr>
<tr>
<td class="left_td">E-mail<font size="-2" style="vertical-align:top;">*</font></td><td><input id="email" name="email" class="inplaceError" maxlength="120" type="text" autocomplete="off" onFocus="window.scrollTo(0, 0);"/></td>
</tr>
<tr>
<td class="left_td">Telefoonnummer<font size="-2" style="vertical-align:top;">*</font></td><td><input id="telefoon" name="telefoon" class="inplaceError" maxlength="120" type="text" autocomplete="off" onFocus="window.scrollTo(0, 0);"/></td>
</tr>
</table>
<div class="sizer">
<label class="label_radio" for="vraag1_A"><input name="vraag1_antwoorden" id="vraag1_A" value="A. Dat is helaas fout, het goede antwoord is: C) 1 Ohm" type="radio" />A) Geen eis</label>
<label class="label_radio" for="vraag1_B"><input name="vraag1_antwoorden" id="vraag1_B" value="B. Dat is helaas fout, het goede antwoord is: C) 1 Ohm" type="radio" />B) 0,1 Ohm</label>
<label class="label_radio" for="vraag1_C"><input name="vraag1_antwoorden" id="vraag1_C" value="C. Gefeliciteerd dat is het goede antwoord." type="radio" />C) 1 Ohm</label>
<label class="label_radio" for="vraag1_D"><input name="vraag1_antwoorden" id="vraag1_D" value="D. Dat is helaas fout, het goede antwoord is: C) 1 Ohm" type="radio" />D) 10 Ohm</label>
</div>
<div class="sizer">
<label class="label_radio" for="vraag2_A"><input name="vraag2_antwoorden" id="vraag2_A" value="A. Gefeliciteerd dat is het goede antwoord." type="radio" />A) 10 Ohm</label>
<label class="label_radio" for="vraag2_B"><input name="vraag2_antwoorden" id="vraag2_B" value="B. Dat is helaas fout, het goede antwoord is: A) 10 Ohm" type="radio" />B) 1 Ohm</label>
<label class="label_radio" for="vraag2_C"><input name="vraag2_antwoorden" id="vraag2_C" value="C. Dat is helaas fout, het goede antwoord is: A) 10 Ohm" type="radio" />C) 0,1 Ohm</label>
<label class="label_radio" for="vraag2_D"><input name="vraag2_antwoorden" id="vraag2_D" value="D. Dat is helaas fout, het goede antwoord is: A) 10 Ohm" type="radio" />D) Geen eis</label>
</div>
<input type="submit" class="verzenden_image" value="" /><input type="hidden" id="newcontact" name="newcontact" value="1"></input></form>
<form id="ContactForm" action="php/contact.php" method="post">
<tr>
<td class="left_td">Aanhef<font size="-2" style="vertical-align:top;">*</font></td><td><label class="label_aanhef" for="aanhef_1"><input name="aanhef" id="aanhef_1" value="Dhr." type="radio" /> Dhr.</label><label class="label_aanhef" for="aanhef_2"><input name="aanhef" id="aanhef_2" value="Mevr." type="radio" /> Mevr.</label></td>
</tr>
<tr class="rij_contactpersoon">
<td class="left_td">Contactpersoon<font size="-2" style="vertical-align:top;">*</font></td><td><input id="contactpersoon" name="contactpersoon" class="inplaceError" maxlength="120" type="text" class="error" autocomplete="off" onFocus="window.scrollTo(0, 0);"/></td>
</tr>
<tr class="rij_bedrijf">
<td class="left_td">Bedrijfsnaam<font size="-2" style="vertical-align:top;">*</font></td><td><input id="bedrijfsnaam" name="bedrijfsnaam" class="inplaceError" maxlength="120" type="text" autocomplete="off" onFocus="window.scrollTo(0, 0);"/></td>
</tr>
<tr>
<td class="left_td">E-mail<font size="-2" style="vertical-align:top;">*</font></td><td><input id="email" name="email" class="inplaceError" maxlength="120" type="text" autocomplete="off" onFocus="window.scrollTo(0, 0);"/></td>
</tr>
<tr>
<td class="left_td">Telefoonnummer<font size="-2" style="vertical-align:top;">*</font></td><td><input id="telefoon" name="telefoon" class="inplaceError" maxlength="120" type="text" autocomplete="off" onFocus="window.scrollTo(0, 0);"/></td>
</tr>
</table>
<div class="sizer">
<label class="label_radio" for="vraag1_A"><input name="vraag1_antwoorden" id="vraag1_A" value="A. Dat is helaas fout, het goede antwoord is: C) 1 Ohm" type="radio" />A) Geen eis</label>
<label class="label_radio" for="vraag1_B"><input name="vraag1_antwoorden" id="vraag1_B" value="B. Dat is helaas fout, het goede antwoord is: C) 1 Ohm" type="radio" />B) 0,1 Ohm</label>
<label class="label_radio" for="vraag1_C"><input name="vraag1_antwoorden" id="vraag1_C" value="C. Gefeliciteerd dat is het goede antwoord." type="radio" />C) 1 Ohm</label>
<label class="label_radio" for="vraag1_D"><input name="vraag1_antwoorden" id="vraag1_D" value="D. Dat is helaas fout, het goede antwoord is: C) 1 Ohm" type="radio" />D) 10 Ohm</label>
</div>
<div class="sizer">
<label class="label_radio" for="vraag2_A"><input name="vraag2_antwoorden" id="vraag2_A" value="A. Gefeliciteerd dat is het goede antwoord." type="radio" />A) 10 Ohm</label>
<label class="label_radio" for="vraag2_B"><input name="vraag2_antwoorden" id="vraag2_B" value="B. Dat is helaas fout, het goede antwoord is: A) 10 Ohm" type="radio" />B) 1 Ohm</label>
<label class="label_radio" for="vraag2_C"><input name="vraag2_antwoorden" id="vraag2_C" value="C. Dat is helaas fout, het goede antwoord is: A) 10 Ohm" type="radio" />C) 0,1 Ohm</label>
<label class="label_radio" for="vraag2_D"><input name="vraag2_antwoorden" id="vraag2_D" value="D. Dat is helaas fout, het goede antwoord is: A) 10 Ohm" type="radio" />D) Geen eis</label>
</div>
<input type="submit" class="verzenden_image" value="" /><input type="hidden" id="newcontact" name="newcontact" value="1"></input></form>
CONTACT.PHP
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
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
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
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
<?php
require_once("db.php"); /* Database Class */
require_once('utils/is_email.php'); /* Email Validation Script */
if ( $_SERVER[REQUEST_METHOD] == 'POST' ){
$myVar = new Contact();
}
/* Class Contact */
class Contact{
private $db; /* the database obj */
private $errors = array(); /* holds error messages */
private $num_errors; /* number of errors in submitted form */
public function __construct(){
$this->db = new DB();
if(isset($_POST['newcontact']))
$this->processNewMessage();
else
header('Location: ../result.php');
}
public function processNewMessage(){
$aanhef = $_POST['aanhef'];
$contactpersoon = $_POST['contactpersoon'];
$bedrijfsnaam = $_POST['bedrijfsnaam'];
$telefoon = $_POST['telefoon'];
$email = $_POST['email'];
$vraag1_antwoorden = $_POST['vraag1_antwoorden'];
$vraag2_antwoorden = $_POST['vraag2_antwoorden'];
/* Server Side Data Validation */
/* Aanhef Validation */
if(!$aanhef || mb_strlen($aanhef = trim($aanhef)) == 0)
$this->setError('aanhef', 'Selecteer uw aanhef');
/* Contactpersoon Validation */
if(!$contactpersoon || mb_strlen($contactpersoon = trim($contactpersoon)) == 0)
$this->setError('contactpersoon', 'Vul uw contactpersoon in');
/* Bedrijfsnaam Validation */
if(!$bedrijfsnaam || mb_strlen($bedrijfsnaam = trim($bedrijfsnaam)) == 0)
$this->setError('bedrijfsnaam', 'Vul uw bedrijfsnaam in');
/* Telefoon Validation */
if(!$telefoon || mb_strlen($telefoon = trim($telefoon)) == 0)
$this->setError('telefoon', 'Vul uw telefoonnummer in');
/* Vraag 1 Validation */
if(!$vraag1_antwoorden || mb_strlen($vraag1_antwoorden = trim($vraag1_antwoorden)) == 0)
$this->setError('vraag1_antwoorden', 'Selecteer uw antwoord');
/* Vraag 2 Validation */
if(!$vraag2_antwoorden || mb_strlen($vraag2_antwoorden = trim($vraag2_antwoorden)) == 0)
$this->setError('vraag2_antwoorden', 'Selecteer uw antwoord');
/* Email Validation */
if(!$email || mb_strlen($email = trim($email)) == 0)
$this->setError('email','Vul uw e-mail in');
else{
if(!is_email($email))
$this->setError('email', 'Vul een correct email adres in');
}
/* Errors exist */
if($this->countErrors() > 0){
$json = array(
'result' => -1,
'errors' => array(
array('name' => 'aanhef' ,'value' => $this->error_value('aanhef')),
array('name' => 'contactpersoon' ,'value' => $this->error_value('contactpersoon')),
array('name' => 'bedrijfsnaam' ,'value' => $this->error_value('bedrijfsnaam')),
array('name' => 'email' ,'value' => $this->error_value('email')),
array('name' => 'telefoon' ,'value' => $this->error_value('telefoon')),
array('name' => 'vraag1_antwoorden' ,'value' => $this->error_value('vraag1_antwoorden')),
array('name' => 'vraag2_antwoorden' ,'value' => $this->error_value('vraag2_antwoorden')),
)
);
// The code below is an example and was not tested
echo("<ol>");
echo("Please correct the following errors:");
foreach ($json['errors'] as $item) {
echo("<li>".$item['value']."</li>");
}
echo("</ol>");
}
/* No errors, insert in db*/
else{
if(($ret = $this->db->dbNewMessage($aanhef, $contactpersoon, $bedrijfsnaam, $email, $telefoon, $vraag1_antwoorden, $vraag2_antwoorden)) > 0){
$json = array('result' => 1);
if(SEND_EMAIL)
$this->sendEmail($aanhef,$contactpersoon,$bedrijfsnaam,$email,$telefoon,$vraag1_antwoorden,$vraag2_antwoorden);
header('Location: ../result.php');
}
else
$json = array('result' => -2); /* something went wrong in database insertion */
$encoded = json_encode($json);
echo $encoded;
unset($encoded);
}
}
public function sendEmail($aanhef,$contactpersoon,$bedrijfsnaam,$email,$telefoon,$vraag1_antwoorden,$vraag2_antwoorden){
/* Just format the email text the way you want ... */
$message_body = "<div style=\"font-size:12px; font-weight:normal;\">Hallo,<br><br>"
."Het volgende bedrijf heeft zich zojuist aangemeld:</div><br>"
."<table cellpadding=\"1\" cellspacing=\"1\" width=\"550px\"><tr><td style=\"font-size:12px; color:#000000\">Bedrijfsnaam:</td><td style=\"font-size:12px; color:#000000\">".$bedrijfsnaam."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Aanhef:</td><td style=\"font-size:12px; color:#000000\">".$aanhef."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Contactpersoon:</td><td style=\"font-size:12px; color:#000000\">".$contactpersoon."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Telefoonnummer:</td><td style=\"font-size:12px; color:#000000\">".$telefoon."</td></tr><tr><td style=\"font-size:12px; color:#000000\">E-mail:</td><td style=\"font-size:12px; color:#000000\">".$email."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Antwoord vraag 1:</td><td style=\"font-size:12px; color:#000000\">".$vraag1_antwoorden."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Antwoord vraag 2:</td><td style=\"font-size:12px; color:#000000\">".$vraag2_antwoorden."</td></tr></table><br>";
// Geef GELDIGE adressen op
// Een korte benaming voor jouw website
$website_naam = 'Aanmelding Quiz';
// Jouw eigen geldige emailadres
$eigen_emailadres = 'MAIL';
// Een geldig emailadres voor errors
$error_emailadres = 'MAIL';
// De naam van de verzender
$naam_verzender = ''.$bedrijfsnaam.'';
// Het geldige emailadres van de afzender
$email_verzender = ''.$email.'';
// Een geldig emailadres of helemaal leeg laten
$bcc_emailadres = '';
// HTML mail? True/False
$html = true;
// De headers samenstellen
$headers = 'From: ' . $website_naam . ' <' . $eigen_emailadres . '>' . PHP_EOL;
$headers .= 'Reply-To: ' . $naam_verzender . ' <' . $email_verzender . '>' . PHP_EOL;
$headers .= 'Return-Path: Mail-Error <' . $error_emailadres . '>' . PHP_EOL;
$headers .= ($bcc_emailadres != '') ? 'Bcc: ' . $bcc_emailadres . PHP_EOL : '';
$headers .= 'X-Mailer: PHP/' . phpversion() . PHP_EOL;
$headers .= 'X-Priority: Normal' . PHP_EOL;
$headers .= ($html) ? 'MIME-Version: 1.0' . PHP_EOL : '';
$headers .= ($html) ? 'Content-type: text/html; charset=iso-8859-1' . PHP_EOL : '';
mail(EMAIL_TO,MESSAGE_SUBJECT,$message_body,$headers);
}
public function setError($field, $errmsg){
$this->errors[$field] = $errmsg;
$this->num_errors = count($this->errors);
}
public function error_value($field){
if(array_key_exists($field,$this->errors))
return $this->errors[$field];
else
return '';
}
public function countErrors(){
return $this->num_errors;
}
};
?>
require_once("db.php"); /* Database Class */
require_once('utils/is_email.php'); /* Email Validation Script */
if ( $_SERVER[REQUEST_METHOD] == 'POST' ){
$myVar = new Contact();
}
/* Class Contact */
class Contact{
private $db; /* the database obj */
private $errors = array(); /* holds error messages */
private $num_errors; /* number of errors in submitted form */
public function __construct(){
$this->db = new DB();
if(isset($_POST['newcontact']))
$this->processNewMessage();
else
header('Location: ../result.php');
}
public function processNewMessage(){
$aanhef = $_POST['aanhef'];
$contactpersoon = $_POST['contactpersoon'];
$bedrijfsnaam = $_POST['bedrijfsnaam'];
$telefoon = $_POST['telefoon'];
$email = $_POST['email'];
$vraag1_antwoorden = $_POST['vraag1_antwoorden'];
$vraag2_antwoorden = $_POST['vraag2_antwoorden'];
/* Server Side Data Validation */
/* Aanhef Validation */
if(!$aanhef || mb_strlen($aanhef = trim($aanhef)) == 0)
$this->setError('aanhef', 'Selecteer uw aanhef');
/* Contactpersoon Validation */
if(!$contactpersoon || mb_strlen($contactpersoon = trim($contactpersoon)) == 0)
$this->setError('contactpersoon', 'Vul uw contactpersoon in');
/* Bedrijfsnaam Validation */
if(!$bedrijfsnaam || mb_strlen($bedrijfsnaam = trim($bedrijfsnaam)) == 0)
$this->setError('bedrijfsnaam', 'Vul uw bedrijfsnaam in');
/* Telefoon Validation */
if(!$telefoon || mb_strlen($telefoon = trim($telefoon)) == 0)
$this->setError('telefoon', 'Vul uw telefoonnummer in');
/* Vraag 1 Validation */
if(!$vraag1_antwoorden || mb_strlen($vraag1_antwoorden = trim($vraag1_antwoorden)) == 0)
$this->setError('vraag1_antwoorden', 'Selecteer uw antwoord');
/* Vraag 2 Validation */
if(!$vraag2_antwoorden || mb_strlen($vraag2_antwoorden = trim($vraag2_antwoorden)) == 0)
$this->setError('vraag2_antwoorden', 'Selecteer uw antwoord');
/* Email Validation */
if(!$email || mb_strlen($email = trim($email)) == 0)
$this->setError('email','Vul uw e-mail in');
else{
if(!is_email($email))
$this->setError('email', 'Vul een correct email adres in');
}
/* Errors exist */
if($this->countErrors() > 0){
$json = array(
'result' => -1,
'errors' => array(
array('name' => 'aanhef' ,'value' => $this->error_value('aanhef')),
array('name' => 'contactpersoon' ,'value' => $this->error_value('contactpersoon')),
array('name' => 'bedrijfsnaam' ,'value' => $this->error_value('bedrijfsnaam')),
array('name' => 'email' ,'value' => $this->error_value('email')),
array('name' => 'telefoon' ,'value' => $this->error_value('telefoon')),
array('name' => 'vraag1_antwoorden' ,'value' => $this->error_value('vraag1_antwoorden')),
array('name' => 'vraag2_antwoorden' ,'value' => $this->error_value('vraag2_antwoorden')),
)
);
// The code below is an example and was not tested
echo("<ol>");
echo("Please correct the following errors:");
foreach ($json['errors'] as $item) {
echo("<li>".$item['value']."</li>");
}
echo("</ol>");
}
/* No errors, insert in db*/
else{
if(($ret = $this->db->dbNewMessage($aanhef, $contactpersoon, $bedrijfsnaam, $email, $telefoon, $vraag1_antwoorden, $vraag2_antwoorden)) > 0){
$json = array('result' => 1);
if(SEND_EMAIL)
$this->sendEmail($aanhef,$contactpersoon,$bedrijfsnaam,$email,$telefoon,$vraag1_antwoorden,$vraag2_antwoorden);
header('Location: ../result.php');
}
else
$json = array('result' => -2); /* something went wrong in database insertion */
$encoded = json_encode($json);
echo $encoded;
unset($encoded);
}
}
public function sendEmail($aanhef,$contactpersoon,$bedrijfsnaam,$email,$telefoon,$vraag1_antwoorden,$vraag2_antwoorden){
/* Just format the email text the way you want ... */
$message_body = "<div style=\"font-size:12px; font-weight:normal;\">Hallo,<br><br>"
."Het volgende bedrijf heeft zich zojuist aangemeld:</div><br>"
."<table cellpadding=\"1\" cellspacing=\"1\" width=\"550px\"><tr><td style=\"font-size:12px; color:#000000\">Bedrijfsnaam:</td><td style=\"font-size:12px; color:#000000\">".$bedrijfsnaam."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Aanhef:</td><td style=\"font-size:12px; color:#000000\">".$aanhef."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Contactpersoon:</td><td style=\"font-size:12px; color:#000000\">".$contactpersoon."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Telefoonnummer:</td><td style=\"font-size:12px; color:#000000\">".$telefoon."</td></tr><tr><td style=\"font-size:12px; color:#000000\">E-mail:</td><td style=\"font-size:12px; color:#000000\">".$email."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Antwoord vraag 1:</td><td style=\"font-size:12px; color:#000000\">".$vraag1_antwoorden."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Antwoord vraag 2:</td><td style=\"font-size:12px; color:#000000\">".$vraag2_antwoorden."</td></tr></table><br>";
// Geef GELDIGE adressen op
// Een korte benaming voor jouw website
$website_naam = 'Aanmelding Quiz';
// Jouw eigen geldige emailadres
$eigen_emailadres = 'MAIL';
// Een geldig emailadres voor errors
$error_emailadres = 'MAIL';
// De naam van de verzender
$naam_verzender = ''.$bedrijfsnaam.'';
// Het geldige emailadres van de afzender
$email_verzender = ''.$email.'';
// Een geldig emailadres of helemaal leeg laten
$bcc_emailadres = '';
// HTML mail? True/False
$html = true;
// De headers samenstellen
$headers = 'From: ' . $website_naam . ' <' . $eigen_emailadres . '>' . PHP_EOL;
$headers .= 'Reply-To: ' . $naam_verzender . ' <' . $email_verzender . '>' . PHP_EOL;
$headers .= 'Return-Path: Mail-Error <' . $error_emailadres . '>' . PHP_EOL;
$headers .= ($bcc_emailadres != '') ? 'Bcc: ' . $bcc_emailadres . PHP_EOL : '';
$headers .= 'X-Mailer: PHP/' . phpversion() . PHP_EOL;
$headers .= 'X-Priority: Normal' . PHP_EOL;
$headers .= ($html) ? 'MIME-Version: 1.0' . PHP_EOL : '';
$headers .= ($html) ? 'Content-type: text/html; charset=iso-8859-1' . PHP_EOL : '';
mail(EMAIL_TO,MESSAGE_SUBJECT,$message_body,$headers);
}
public function setError($field, $errmsg){
$this->errors[$field] = $errmsg;
$this->num_errors = count($this->errors);
}
public function error_value($field){
if(array_key_exists($field,$this->errors))
return $this->errors[$field];
else
return '';
}
public function countErrors(){
return $this->num_errors;
}
};
?>
RESULT.PHP
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<table width="650px" cellpadding="0" cellspacing="0">
<tr class="rij_contactpersoon">
<td class="left_td">Contactpersoon:</td><td><strong><?php echo $_POST["contactpersoon"]; ?></strong></td><td> </td>
</tr>
<tr class="rij_bedrijf">
<td class="left_td">Bedrijfsnaam:</td><td><strong><?php echo $_POST["bedrijfsnaam"]; ?></strong></td><td> </td>
</tr>
</table>
<tr class="rij_contactpersoon">
<td class="left_td">Contactpersoon:</td><td><strong><?php echo $_POST["contactpersoon"]; ?></strong></td><td> </td>
</tr>
<tr class="rij_bedrijf">
<td class="left_td">Bedrijfsnaam:</td><td><strong><?php echo $_POST["bedrijfsnaam"]; ?></strong></td><td> </td>
</tr>
</table>
Gewijzigd op 22/08/2012 14:52:58 door Sebas V
http://www.phphulp.nl/php/forum/topic/quiz-probleem/86175/ ?
In contact.php is geen formulier/post je niets. Hoe zou in result.php dan de $_POST waarde beschikbaar kunnen zijn (uit quiz.php?
Nog wat opmerkingen bij je code:
Waarom die ''?
Gebruik in PHP ' en in HTML " --> scheelt je escapen.
Zie ook http://www.phphulp.nl/php/tutorial/php-algemeen/correct-quoten/772/
Is dit niet een vervolg op/vergelijkbaar met In contact.php is geen formulier/post je niets. Hoe zou in result.php dan de $_POST waarde beschikbaar kunnen zijn (uit quiz.php?
Nog wat opmerkingen bij je code:
Waarom die ''?
Code (php)
1
2
3
2
3
<?php
$message_body = "<div style=\"font-size:12px; font-weight:normal;\">Hallo,<br><br>"
?>
$message_body = "<div style=\"font-size:12px; font-weight:normal;\">Hallo,<br><br>"
?>
Gebruik in PHP ' en in HTML " --> scheelt je escapen.
Zie ook http://www.phphulp.nl/php/tutorial/php-algemeen/correct-quoten/772/
Heb je een voorbeeld hoe een tabel geïntegreerd zou kunnen worden in contact.php zodat deze uitgelezen kan worden op result.php?
Dien ik met een echo te werken?
Sebastian V op 22/08/2012 16:19:08:
een tabel geïntegreerd zou kunnen worden in contact.php zodat deze uitgelezen kan worden op result.php?
Een tabel integreren???? Geen idee wat je daarmee bedoelt.
Je kunt de variabelen in je header meegeven, zodat ze op result met een $_GET kunnen worden uitgelezen. Of je zet ze in een SESSION.
De variabelen staan in de header van en de $_GET staan in de tabel op RESULT.PHP
CONTACT.PHP (IN DIT GEDEELTE WORDT AANGEGEVEN WAT TE DOEN NA DE SUBMIT)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/* No errors, insert in db*/
else{
if(($ret = $this->db->dbNewMessage($aanhef, $contactpersoon, $bedrijfsnaam, $email, $telefoon, $vraag1_antwoorden, $vraag2_antwoorden)) > 0){
$json = array('result' => 1);
if(SEND_EMAIL)
$this->sendEmail($aanhef,$contactpersoon,$bedrijfsnaam,$email,$telefoon,$vraag1_antwoorden,$vraag2_antwoorden);
header('Location: ../result.php');
}
else
$json = array('result' => -2); /* something went wrong in database insertion */
$encoded = json_encode($json);
echo $encoded;
unset($encoded);
}
else{
if(($ret = $this->db->dbNewMessage($aanhef, $contactpersoon, $bedrijfsnaam, $email, $telefoon, $vraag1_antwoorden, $vraag2_antwoorden)) > 0){
$json = array('result' => 1);
if(SEND_EMAIL)
$this->sendEmail($aanhef,$contactpersoon,$bedrijfsnaam,$email,$telefoon,$vraag1_antwoorden,$vraag2_antwoorden);
header('Location: ../result.php');
}
else
$json = array('result' => -2); /* something went wrong in database insertion */
$encoded = json_encode($json);
echo $encoded;
unset($encoded);
}
RESULT.PHP
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<head>
<meta charset="UTF-8" />
<title>Quiz</title>
<meta name="viewport" content="width=device-width; initial-scale=1.0; user-scalable=0;">
<link href='http://fonts.googleapis.com/css?family=Source+Sans+Pro:400,700,900' rel='stylesheet' type='text/css'>
<link rel="stylesheet" type="text/css" href="css/print.css" />
<?php
$contactpersoon = $_POST['contactpersoon'];
$bedrijfsnaam = $_POST['bedrijfsnaam'];
?>
</head>
<body>
<table width="650px" cellpadding="0" cellspacing="0">
<tr class="rij_contactpersoon">
<td class="left_td">Contactpersoon:</td><td><strong><?php echo $_GET["contactpersoon"]; ?></strong></td><td> </td>
</tr>
<tr class="rij_bedrijf">
<td class="left_td">Bedrijfsnaam:</td><td><strong><?php echo $_GET["bedrijfsnaam"]; ?></strong></td><td> </td>
</tr>
</table>
<meta charset="UTF-8" />
<title>Quiz</title>
<meta name="viewport" content="width=device-width; initial-scale=1.0; user-scalable=0;">
<link href='http://fonts.googleapis.com/css?family=Source+Sans+Pro:400,700,900' rel='stylesheet' type='text/css'>
<link rel="stylesheet" type="text/css" href="css/print.css" />
<?php
$contactpersoon = $_POST['contactpersoon'];
$bedrijfsnaam = $_POST['bedrijfsnaam'];
?>
</head>
<body>
<table width="650px" cellpadding="0" cellspacing="0">
<tr class="rij_contactpersoon">
<td class="left_td">Contactpersoon:</td><td><strong><?php echo $_GET["contactpersoon"]; ?></strong></td><td> </td>
</tr>
<tr class="rij_bedrijf">
<td class="left_td">Bedrijfsnaam:</td><td><strong><?php echo $_GET["bedrijfsnaam"]; ?></strong></td><td> </td>
</tr>
</table>
Gewijzigd op 22/08/2012 16:54:28 door Sebas V
In je header in contact zie ik geen variabelen meegegeven worden.
wat is het nut/de bedoeling in result van regel 9 en 10?
Waarom drie bestanden? Maak het jezelf makkelijk(er) en copy/paste het result bestand in contact i.p.v. de header.
Kijk verder eens naar een basistut over formulieren.