Formulier bijna werkend :
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
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
<?php include '../../inc/stats.php' ;
// Controle of een formulier gepost is
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
// Arrays declareren voor opslag van fouten en data
$aErrors =array ();
$aData =array ();
// Velden die in het formulier aanwezig moeten zijn
$saFormulierVelden = array ('voornaam', 'achternaam','Nummer 1', ' Nummer 2 ' , 'Nummer 3');
// Alle formuliervelden doorlopen
foreach ($aFormulierVelden as $sVeld)
// Controleren of er een waarden voor het formuliervveld bestaat
if (isset ($_POST[$sVeld]))
{
// Spaties aan begin en eind weghalen
$sValue = trim ($_POST[$sVeld]);
// Controle of variabele gevuld is
if (empty ($sValue) )
{
// Foutmelding toevoegen
$aErrors[] = 'Je bent vergeten om '.$sVeld. ' in te vullen';
}
// Ingevulde waarden aan data array toevoegen
$aData[$sVeld] =$sValue;
}
else
{
$aErrors[] = 'Het veld ' .$sVeld.' is niet gepost!';
}
}
// Controleren of er geen fouten opgetreden zijn
if (empty($aErrors))
{
// Formulier Succes !
echo '<p>Je hebt het formulier succesvol ingevuld! De volgende gegevens zijn bekend:</p>'
echo '<p>Voornaam: '.$aData ['voornaam'].'<br/>';
echo '<p>Achternaam: '.$aData['achternaam'].'</p>';
echo '<p>Nummer 1: '.$aData['Nummer 1'].'</p>';
echo '<p>Nummer 2: '.$aData['Nummer 2'].'</p>';
echo '<p>Nummer 3: '.$aData['Nummer 3'].'</p>';
}
else
{
// Fouten opgetreden: Weergeven en terug naar formulier
header('Refresh 3; url=formulier.php');
foreach($aErrors as $sError)
{
echo'<p style="color:red">'.$sError.'</p>';
}
}
}
else
{
// Verwerk.php mag nog niet bezocht worden , terug naar het formulier
header(Location: formulier.php');
}
?>
// Controle of een formulier gepost is
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
// Arrays declareren voor opslag van fouten en data
$aErrors =array ();
$aData =array ();
// Velden die in het formulier aanwezig moeten zijn
$saFormulierVelden = array ('voornaam', 'achternaam','Nummer 1', ' Nummer 2 ' , 'Nummer 3');
// Alle formuliervelden doorlopen
foreach ($aFormulierVelden as $sVeld)
// Controleren of er een waarden voor het formuliervveld bestaat
if (isset ($_POST[$sVeld]))
{
// Spaties aan begin en eind weghalen
$sValue = trim ($_POST[$sVeld]);
// Controle of variabele gevuld is
if (empty ($sValue) )
{
// Foutmelding toevoegen
$aErrors[] = 'Je bent vergeten om '.$sVeld. ' in te vullen';
}
// Ingevulde waarden aan data array toevoegen
$aData[$sVeld] =$sValue;
}
else
{
$aErrors[] = 'Het veld ' .$sVeld.' is niet gepost!';
}
}
// Controleren of er geen fouten opgetreden zijn
if (empty($aErrors))
{
// Formulier Succes !
echo '<p>Je hebt het formulier succesvol ingevuld! De volgende gegevens zijn bekend:</p>'
echo '<p>Voornaam: '.$aData ['voornaam'].'<br/>';
echo '<p>Achternaam: '.$aData['achternaam'].'</p>';
echo '<p>Nummer 1: '.$aData['Nummer 1'].'</p>';
echo '<p>Nummer 2: '.$aData['Nummer 2'].'</p>';
echo '<p>Nummer 3: '.$aData['Nummer 3'].'</p>';
}
else
{
// Fouten opgetreden: Weergeven en terug naar formulier
header('Refresh 3; url=formulier.php');
foreach($aErrors as $sError)
{
echo'<p style="color:red">'.$sError.'</p>';
}
}
}
else
{
// Verwerk.php mag nog niet bezocht worden , terug naar het formulier
header(Location: formulier.php');
}
?>
Vul het formulier maar in :
http://www.radiowaubach.nl/script/top3.php
Weet iemand wat ik fout doe
Puntkomma op regel 53 zetten.
Nu zet hij hem op 69 met een fout...
Je hebt een haakje teveel ergens en je mist een quote bij die header().
Op dit moment alleen nog de volgende melding :
Warning: include(../../inc/stats.php) [function.include]: failed to open stream: No such file or directory in /home/johnnywi/domains/radiowaubach.nl/public_html/script/verwerk.php on line 1
Warning: include(../../inc/stats.php) [function.include]: failed to open stream: No such file or directory in /home/johnnywi/domains/radiowaubach.nl/public_html/script/verwerk.php on line 1
Warning: include() [function.include]: Failed opening '../../inc/stats.php' for inclusion (include_path='.:/usr/local/lib/php') in /home/johnnywi/domains/radiowaubach.nl/public_html/script/verwerk.php on line 1
Warning: Invalid argument supplied for foreach() in /home/johnnywi/domains/radiowaubach.nl/public_html/script/verwerk.php on line 13
Je hebt het formulier succesvol ingevuld! De volgende gegevens zijn bekend:
Groetjes
Johnny
Die foreach is fout omdat op regel 15 $saFormulierVelden staat en in de foreach zonder s.
Gr
Johnny
Welke foutmelding?
Midas schreef op 04.01.2009 20:55:
Welke foutmelding?
Warning: Cannot modify header information - headers already sent by (output started at /home/johnnywi/domains/radiowaubach.nl/public_html/script/verwerk.php:1) in /home/johnnywi/domains/radiowaubach.nl/public_html/script/verwerk.php on line 51
We hebben hier op phphulp.nl een leuke FAQ pagina!
En de Warning: cannot modify header .....
Staat er ook in, klik hier om naar die fout melding te gaan!
Alexander
Mr. de Jong schreef op 04.01.2009 21:11:
Heey Johnny,
We hebben hier op phphulp.nl een leuke FAQ pagina!
En de Warning: cannot modify header .....
Staat er ook in, klik hier om naar die fout melding te gaan!
Alexander
We hebben hier op phphulp.nl een leuke FAQ pagina!
En de Warning: cannot modify header .....
Staat er ook in, klik hier om naar die fout melding te gaan!
Alexander
Heeej Mister Dr Jong....
Heb de faq doorgelezen....
Nu moest ik header('Refresh: 3; url= top3.php');
Eruit Halen maar als ik hem eruit haal, dan geeft het formulier de melding :
Het veld voornaam is niet gepost!
Het veld Nummer 1 is niet gepost!
Het veld Nummer 2 is niet gepost!
Het veld Nummer 3 is niet gepost!
Betekend, dat dat het nergens naar verwijsd bijvoorbeeld, een of andere email adres waar het naar toe moet?
Groetjes
Johnny
Code (php)
Er staat:
Als $sValue leeg is, stop dan een error in de array.
Als $sValue niet leeg is, geef dan weer dat het veld niet is gepost.
Aan die laatste zin kan je zien dat het niet klopt. :-)
Hoe kan ik dit voor elkaar krijgen... ?
Gr
Johnny