POST en functies en dergelijke
Het volgende wilt niet werken.
HEt zal wel rap duidelijk zin wat de bedoeling is ....
<html>
<head>
<title>Untitled Document</title>
</head>
<body>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<table width="34%" border="2" cellspacing="0" cellpadding="0">
<form method="post">
<tr>
<td width="38%">First Name</td>
<td width="62%"><input name="first_name" type="text" value=""></td>
</tr>
<tr>
<td>Last name*</td>
<td><input name="last_name" type="text" value=""></td>
</tr>
<tr>
<td>e-mail address*</td>
<td><input name="mail" type="text" value=""></td>
</tr>
<tr>
<td>Zip-code*</td>
<td><input name="zip_code" type="text" value=""></td>
</tr>
<tr>
<td>operating system</td>
<td><input name="os" type="text" value=""></td>
</tr>
</table>
<input type="submit" value="submit!">
<input type="reset" vamue="reset">
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<? }
function check_form($last_name, $mail, $zip_code){
if(!$last_name && !$mail&& !$zip_code){ //waarom niet !isset($_POST["mail"]
confirm_form($first_name, $last_name, $mail, $zip_code, $os);
}
elseif(!isset($_POST["last_name"])){
print("You are missing some required fields \n");
print("you need to fill your Last name\n");
}
elseif(!isset($_POST["mail"])){
print("You are missing some required fields \n");
print("you need to fill your e-mail\n");
}
elseif(!isset($_POST["zip_code"])){
print("You are missing some required fields \n");
print("you need to fill your zip code\n");
}
print_form($last_name, $mail, $zip_code);
if(empty($_POST)){
?>
function check_form($last_name, $mail, $zip_code){
if(!$last_name && !$mail&& !$zip_code){ //waarom niet !isset($_POST["mail"]
confirm_form($first_name, $last_name, $mail, $zip_code, $os);
}
elseif(!isset($_POST["last_name"])){
print("You are missing some required fields \n");
print("you need to fill your Last name\n");
}
elseif(!isset($_POST["mail"])){
print("You are missing some required fields \n");
print("you need to fill your e-mail\n");
}
elseif(!isset($_POST["zip_code"])){
print("You are missing some required fields \n");
print("you need to fill your zip code\n");
}
print_form($last_name, $mail, $zip_code);
if(empty($_POST)){
?>
met * verplicht in te vullen \n")<br>
</body>
</html>
Gewijzigd op 30/12/2004 01:01:00 door dutchcamel
Bruno
PHP IS SERVER SIDE EN DIT MOET MET JAVASCRIPT WANT DAT WERKT WEL CLIENT SIDE ZOALS JIJ WIL!!!.
Of het moet zijn dat je de controle pas op de volgende pagina wil doen, dan kan het idd wel met php. Maar daar lijkt deze code totaal niet op.
Je maakt een functie om vervolgens html neer te knallen en tussendoor een paar variabelen. Dat gaat al nooit goed en is als het al zou werken overbodig om daarvoor een functie te maken...
Ik zou eerst eens wat meer over php gaan lezen want zo lukt het niet :)
<html>
<head>
<title>Untitled Document</title>
</head>
<body>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?
function confirm_form($first_name, $last_name, $mail, $zip_code, $os){
print("Thanks <br>");
print("Contact Info <br>");
print("$first_name, $last_name <br>");
print("$mail <br>");
print("zip: $zip_code <br>");
print("os: $os <br>");
}
function print_form($first_name, $last_name, $mail, $zip_code, $os){
?>
function confirm_form($first_name, $last_name, $mail, $zip_code, $os){
print("Thanks <br>");
print("Contact Info <br>");
print("$first_name, $last_name <br>");
print("$mail <br>");
print("zip: $zip_code <br>");
print("os: $os <br>");
}
function print_form($first_name, $last_name, $mail, $zip_code, $os){
?>
<table width="34%" border="2" cellspacing="0" cellpadding="0">
<form method="post">
<tr>
<td width="38%">First Name</td>
<td width="62%"><input type="text" name="first_name" value=""></td>
</tr>
<tr>
<td>Last name*</td>
<td><input name="last_name" type="text" value=""></td>
</tr>
<tr>
<td>e-mail address*</td>
<td><input name="mail" type="text" value=""></td>
</tr>
<tr>
<td>Zip-code*</td>
<td><input name="zip_code" type="text" value=""></td>
</tr>
<tr>
<td>operating system</td>
<td><input name="os" type="text" value=""></td>
</tr>
</table>
<input type="submit" value="submit!">
<input type="reset" vamue="reset">
</form>
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<? }
function check_form($first_name, $last_name, $mail, $zip_code, $os){
if(($last_name!="") && ($mail!="") && ($zip_code!="")){
confirm_form($first_name, $last_name, $mail, $zip_code, $os);
}
else{
if($last_name==""){
print("You are missing some required fields <br>");
print("you need to fill your Last name<br>");
}
if($mail==""){
print("You are missing some required fields <br>");
print("you need to fill your e-mail <br>");
}
if($zip_code==""){
print("You are missing some required fields <br>");
print("you need to fill your zip code <br>");
}
print_form($first_name, $last_name, $mail, $zip_code, $os);
}
}
//main
if(empty($_POST)){?>
function check_form($first_name, $last_name, $mail, $zip_code, $os){
if(($last_name!="") && ($mail!="") && ($zip_code!="")){
confirm_form($first_name, $last_name, $mail, $zip_code, $os);
}
else{
if($last_name==""){
print("You are missing some required fields <br>");
print("you need to fill your Last name<br>");
}
if($mail==""){
print("You are missing some required fields <br>");
print("you need to fill your e-mail <br>");
}
if($zip_code==""){
print("You are missing some required fields <br>");
print("you need to fill your zip code <br>");
}
print_form($first_name, $last_name, $mail, $zip_code, $os);
}
}
//main
if(empty($_POST)){?>
Please enter your information <br>
met * verplicht in te vullen<br>
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<? print_form("","","","","");
}
else {
check_form($_POST["first_name"], $_POST["last_name"], $_POST["mail"], $_POST["zip_code"], $_POST["os"]);
}
?>
}
else {
check_form($_POST["first_name"], $_POST["last_name"], $_POST["mail"], $_POST["zip_code"], $_POST["os"]);
}
?>
</body>
</html>
dutchcamel:
Eigenwijs doen is ook een kunst.
PHP IS SERVER SIDE EN DIT MOET MET JAVASCRIPT WANT DAT WERKT WEL CLIENT SIDE ZOALS JIJ WIL!!!.
Of het moet zijn dat je de controle pas op de volgende pagina wil doen, dan kan het idd wel met php. Maar daar lijkt deze code totaal niet op.
Je maakt een functie om vervolgens html neer te knallen en tussendoor een paar variabelen. Dat gaat al nooit goed en is als het al zou werken overbodig om daarvoor een functie te maken...
Ik zou eerst eens wat meer over php gaan lezen want zo lukt het niet :)
PHP IS SERVER SIDE EN DIT MOET MET JAVASCRIPT WANT DAT WERKT WEL CLIENT SIDE ZOALS JIJ WIL!!!.
Of het moet zijn dat je de controle pas op de volgende pagina wil doen, dan kan het idd wel met php. Maar daar lijkt deze code totaal niet op.
Je maakt een functie om vervolgens html neer te knallen en tussendoor een paar variabelen. Dat gaat al nooit goed en is als het al zou werken overbodig om daarvoor een functie te maken...
Ik zou eerst eens wat meer over php gaan lezen want zo lukt het niet :)
Omdat het client-sided is, wat betekend dat de client er in kan lopen kl*t*n in je source code en dus zo je form check functie kan spoofen of uitschakelen.
Hou het dus maar lekker bij PHP ;).
Het beste is op de pagina zelf met javascript laten controleren, dat voorkomt ergernissen van de bezoeker die formulieren door 1 foutje onnodig opnieuw in moet vullen. En vervolgens op de volgende pagina alle gegevens met behulp van PHP nog eens te controleren. Een soort dubbele controle die veilig en gebruiksvriendelijk is :)
<input type="submit" value="submit!">
<input type="reset" vamue="reset">
vamue ???
Dat is modern scripten.
lol :)
Ziet of snapt iemand hoe dat kan?
(mail.php)
<html>
<head><title>Mail</title></head>
<body>
Code (php)
1
2
3
4
2
3
4
<?php
$mail = "Naam: " . $naam . "\r\nOnderwerp: " . $onderwerp . "\r\nBericht: " . $bericht . "\n";
mail("[email protected]", $onderwerp, $mail) or die("Fout bij het versturen van de mail");
?>
$mail = "Naam: " . $naam . "\r\nOnderwerp: " . $onderwerp . "\r\nBericht: " . $bericht . "\n";
mail("[email protected]", $onderwerp, $mail) or die("Fout bij het versturen van de mail");
?>
De mail is verstuurd. Bedankt voor uw reactie!
</body>
</html>
(form.php)
<html><head><title>Form</title>
<body>
<form action="mail.php" method="post" name="mailform">
Naam: <input type="text" name="naam" size="25"><br />
Onderwerp: <input type="text" name="onderwerp" size="25"><br />
Bericht: <textarea name="bericht" cols="50" rows="5"></textarea><br />
<input type="submit" name="submit" value="Verzenden">
</form>
</body>
</html>
En owja, ik wil wel even helpen: ipv $bericht die je wil mailen doe je $_POST['bericht'] en zo moet je het bij allemaal doen
Gewijzigd op 22/08/2005 16:40:00 door Casper
ja, heb ik al gedaan