static variabele in form validatie script met filters
hey
ik probeer een registreer script te schrijven
dat aan de hand van filters en functies gaat controleren of de input wel correct is
alles werkt, bv controleren of de usernaam langer is als 3 tekens,
en of het email adres een @ en . bevat
nu probeer ik het tweede email veld, ook met een functie, te laten controleren of het hetzelfde email adres is als in het eerste email veldje
maar in de functie checkEmail2()
wil ik dus $sEmail vergelijken met $sEmail2
maar dan krijg ik de error dan $sEmail is not specified
nu is mijn vraag
hoe krijg ik die variabele ook in die tweede functie op lijn 45?
dit is mijn script
ik probeer een registreer script te schrijven
dat aan de hand van filters en functies gaat controleren of de input wel correct is
alles werkt, bv controleren of de usernaam langer is als 3 tekens,
en of het email adres een @ en . bevat
nu probeer ik het tweede email veld, ook met een functie, te laten controleren of het hetzelfde email adres is als in het eerste email veldje
maar in de functie checkEmail2()
wil ik dus $sEmail vergelijken met $sEmail2
maar dan krijg ik de error dan $sEmail is not specified
nu is mijn vraag
hoe krijg ik die variabele ook in die tweede functie op lijn 45?
dit is mijn script
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
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
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
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
session_start();
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
// Declareren van errors en input arrays
$_SESSION['errors'] = array();
$_SESSION['input'] = $_POST;
// Verplichte velden
$aVerplicht = array('gebruikersnaam', 'voornaam', 'achternaam', 'postcode', 'email', 'email2');
/**
* Controle gebruikersnaam
*
* @param string $sGebruikersnaam: de te controleren gebruikersnaam
* @return: NULL als gebruikersnaam korter is dan 4 tekens, anders $sGebruikersnaam
*/
function checkUsername($sGebruikersnaam)
{
return strlen($sGebruikersnaam) > 3 ? $sGebruikersnaam : NULL;
}
function checkEmail($sEmail)
{
if(preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/i", $sEmail)) {
return $sEmail;
}}
function checkEmail2($sEmail2, $sEmail) {
if ($sEmail2 != $sEmail) {
NULL;
}
}
/**
* Postcode controle op geldig formaat
*
* @param string $sPostcode: de te controleren postcode
* @return: NULL als postcode geen geldig formaat heeft, anders $sPostcode
*/
function checkPostcode($sPostcode)
{
return preg_match('/^[1-9]{1}[0-9]{3}$/i', $sPostcode) ? $sPostcode : NULL;
}
// Definieren van filters voor verschillende inputvelden.
$aFilters = array (
'gebruikersnaam' => array (
'filter' => FILTER_CALLBACK,
'options' => 'checkUsername' ),
'voornaam' => NULL,
'achternaam' => NULL,
'email' => array (
'filter' => FILTER_CALLBACK,
'options' => 'checkEmail' ),
'email2' => array (
'filter' => FILTER_CALLBACK,
'options' => 'checkEmail2' ),
'postcode' => array (
'filter' => FILTER_CALLBACK,
'options' => 'checkPostcode' ),
'woonplaats' => NULL,
'geboortejaar' => FILTER_VALIDATE_INT
);
// Uitvoeren van de filters en doorlopen van het resultaat
$aResultaat = filter_input_array(INPUT_POST, $aFilters);
foreach($aResultaat as $sKey => $sValue)
{
$sValue = trim($sValue);
if(empty($sValue) && in_array($sKey, $aVerplicht))
{
$_SESSION['errors'][$sKey] = true;
$aErrors[] = 'Je hebt geen geldige '.$sKey.' ingevuld.';
}
}
// Verwerk het formulier als er geen fouten opgetreden zijn.
if(empty($_SESSION['errors']))
{
// Verwerk het formulier:
// vb. Schrijf gegevens naar een database
// vb. Stuur een email met de gegevens
// Stuur gebruiker door naar een volgende pagina.
$aContent[] = '<p><b>Het resultaat, de input:</b></p>';
$aContent[] = '<ul>';
foreach($_SESSION['input'] as $sKey => $sValue)
{
$aContent[] = '<li>'.$sKey.': '.$sValue.'</li>';
}
$aContent[] = '</ul>';
unset($_SESSION['input']);
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Jorendewit.nl - PHP Scripts - Formuliercontrole met behulp van PHP filters</title>
<link rel="stylesheet" href="../styles/default.css" type="text/css" media="screen" />
<style type="text/css">
input.error {
border: 2px solid #FF0000;
}
</style>
</head>
<body>
<div id="wrap">
<p class="none small align-right"><a href="/view/40/"><-- Terug naar Scripts</a></p>
<h1>Formuliercontrole met behulp van PHP filters</h1>
<div id="info">
<p>PHP versie: >= 5.2.0</p>
</div>
<p>De input in onderstaand formulier wordt gecontroleerd met behulp van PHP filters. Alle velden met een * zijn verplicht.</p>
<form action="#" method="post" name="example">
<p>
<label class="field" for="gebruiker" class="naast">Gebruikersnaam:</label>
<input type="text"
id="gebruiker"
name="gebruikersnaam"
value="<?php echo isset($_SESSION['input']['gebruikersnaam']) ? $_SESSION['input']['gebruikersnaam'] : ''; ?>"
class="<?php echo (isset($_SESSION['errors']['gebruikersnaam']) && $_SESSION['errors']['gebruikersnaam'] == 'true') ? 'error' : ''; ?>"
/> * (meer dan 3 tekens)
</p>
<p>
<label class="field" for="voor" class="naast">Voornaam:</label>
<input type="text"
id="voor"
name="voornaam"
value="<?php echo isset($_SESSION['input']['voornaam']) ? $_SESSION['input']['voornaam'] : ''; ?>"
class="<?php echo (isset($_SESSION['errors']['voornaam']) && $_SESSION['errors']['voornaam'] == 'true') ? 'error' : ''; ?>"
/> *
</p>
<p>
<label class="field" for="achter" class="naast">Achternaam:</label>
<input type="text"
id="achter"
name="achternaam"
value="<?php echo isset($_SESSION['input']['achternaam']) ? $_SESSION['input']['achternaam'] : ''; ?>"
class="<?php echo (isset($_SESSION['errors']['achternaam']) && $_SESSION['errors']['achternaam'] == 'true') ? 'error' : ''; ?>"
/> *
</p>
<p>
<label class="field" for="mail" class="naast">Email:</label>
<input type="text"
id="mail"
name="email"
value="<?php echo isset($_SESSION['input']['email']) ? $_SESSION['input']['email'] : ''; ?>"
class="<?php echo (isset($_SESSION['errors']['email']) && $_SESSION['errors']['email'] == 'true') ? 'error' : ''; ?>"
/> *
</p>
<p>
<label class="field" for="mail2" class="naast">Hertyp Email:</label>
<input type="text"
id="mail2"
name="email2"
value="<?php echo isset($_SESSION['input']['email2']) ? $_SESSION['input']['email2'] : ''; ?>"
class="<?php echo (isset($_SESSION['errors']['email2']) && $_SESSION['errors']['email2'] == 'true') ? 'error' : ''; ?>"
/> *
</p>
<p>
<label class="field" for="postcode" class="naast">Postcode:</label>
<input type="text"
id="postcode"
name="postcode"
value="<?php echo isset($_SESSION['input']['postcode']) ? $_SESSION['input']['postcode'] : ''; ?>"
class="<?php echo (isset($_SESSION['errors']['postcode']) && $_SESSION['errors']['postcode'] == 'true') ? 'error' : ''; ?>"
/> * (1234)
</p>
<p>
<label class="field" for="woon" class="naast">Woonplaats:</label>
<input type="text"
id="woon"
name="woonplaats"
value="<?php echo isset($_SESSION['input']['woonplaats']) ? $_SESSION['input']['woonplaats'] : ''; ?>"
/>
</p>
<p>
<label class="field" for="geboortejaar" class="naast">Geboortejaar:</label>
<select id="geboortejaar" name="geboortejaar">
<?php
for($i = date('Y'); $i >= 1900; $i--)
{
if(isset($_SESSION['input']['geboortejaar']) && $_SESSION['input']['geboortejaar'] == $i)
{
echo '<option value="'.$i.'" selected="selected">'.$i.'</option>';
}
else
{
echo '<option value="'.$i.'">'.$i.'</option>';
}
}
?>
</select>
<p>
<input type="submit" value="Verzenden" class="lijnuit" />
</p>
</form>
<?php
// Weergeven van meldingen uit het phpscript.
if(isset($aErrors))
{
echo '<ul>';
foreach($aErrors as $sError)
{
echo '<li>'.$sError.'</li>';
}
echo '</ul>';
}
elseif(isset($aContent))
{
foreach($aContent as $sLine)
{
echo $sLine;
}
}
?>
</div>
</body>
</html>
ini_set('display_errors', 1);
error_reporting(E_ALL);
session_start();
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
// Declareren van errors en input arrays
$_SESSION['errors'] = array();
$_SESSION['input'] = $_POST;
// Verplichte velden
$aVerplicht = array('gebruikersnaam', 'voornaam', 'achternaam', 'postcode', 'email', 'email2');
/**
* Controle gebruikersnaam
*
* @param string $sGebruikersnaam: de te controleren gebruikersnaam
* @return: NULL als gebruikersnaam korter is dan 4 tekens, anders $sGebruikersnaam
*/
function checkUsername($sGebruikersnaam)
{
return strlen($sGebruikersnaam) > 3 ? $sGebruikersnaam : NULL;
}
function checkEmail($sEmail)
{
if(preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/i", $sEmail)) {
return $sEmail;
}}
function checkEmail2($sEmail2, $sEmail) {
if ($sEmail2 != $sEmail) {
NULL;
}
}
/**
* Postcode controle op geldig formaat
*
* @param string $sPostcode: de te controleren postcode
* @return: NULL als postcode geen geldig formaat heeft, anders $sPostcode
*/
function checkPostcode($sPostcode)
{
return preg_match('/^[1-9]{1}[0-9]{3}$/i', $sPostcode) ? $sPostcode : NULL;
}
// Definieren van filters voor verschillende inputvelden.
$aFilters = array (
'gebruikersnaam' => array (
'filter' => FILTER_CALLBACK,
'options' => 'checkUsername' ),
'voornaam' => NULL,
'achternaam' => NULL,
'email' => array (
'filter' => FILTER_CALLBACK,
'options' => 'checkEmail' ),
'email2' => array (
'filter' => FILTER_CALLBACK,
'options' => 'checkEmail2' ),
'postcode' => array (
'filter' => FILTER_CALLBACK,
'options' => 'checkPostcode' ),
'woonplaats' => NULL,
'geboortejaar' => FILTER_VALIDATE_INT
);
// Uitvoeren van de filters en doorlopen van het resultaat
$aResultaat = filter_input_array(INPUT_POST, $aFilters);
foreach($aResultaat as $sKey => $sValue)
{
$sValue = trim($sValue);
if(empty($sValue) && in_array($sKey, $aVerplicht))
{
$_SESSION['errors'][$sKey] = true;
$aErrors[] = 'Je hebt geen geldige '.$sKey.' ingevuld.';
}
}
// Verwerk het formulier als er geen fouten opgetreden zijn.
if(empty($_SESSION['errors']))
{
// Verwerk het formulier:
// vb. Schrijf gegevens naar een database
// vb. Stuur een email met de gegevens
// Stuur gebruiker door naar een volgende pagina.
$aContent[] = '<p><b>Het resultaat, de input:</b></p>';
$aContent[] = '<ul>';
foreach($_SESSION['input'] as $sKey => $sValue)
{
$aContent[] = '<li>'.$sKey.': '.$sValue.'</li>';
}
$aContent[] = '</ul>';
unset($_SESSION['input']);
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Jorendewit.nl - PHP Scripts - Formuliercontrole met behulp van PHP filters</title>
<link rel="stylesheet" href="../styles/default.css" type="text/css" media="screen" />
<style type="text/css">
input.error {
border: 2px solid #FF0000;
}
</style>
</head>
<body>
<div id="wrap">
<p class="none small align-right"><a href="/view/40/"><-- Terug naar Scripts</a></p>
<h1>Formuliercontrole met behulp van PHP filters</h1>
<div id="info">
<p>PHP versie: >= 5.2.0</p>
</div>
<p>De input in onderstaand formulier wordt gecontroleerd met behulp van PHP filters. Alle velden met een * zijn verplicht.</p>
<form action="#" method="post" name="example">
<p>
<label class="field" for="gebruiker" class="naast">Gebruikersnaam:</label>
<input type="text"
id="gebruiker"
name="gebruikersnaam"
value="<?php echo isset($_SESSION['input']['gebruikersnaam']) ? $_SESSION['input']['gebruikersnaam'] : ''; ?>"
class="<?php echo (isset($_SESSION['errors']['gebruikersnaam']) && $_SESSION['errors']['gebruikersnaam'] == 'true') ? 'error' : ''; ?>"
/> * (meer dan 3 tekens)
</p>
<p>
<label class="field" for="voor" class="naast">Voornaam:</label>
<input type="text"
id="voor"
name="voornaam"
value="<?php echo isset($_SESSION['input']['voornaam']) ? $_SESSION['input']['voornaam'] : ''; ?>"
class="<?php echo (isset($_SESSION['errors']['voornaam']) && $_SESSION['errors']['voornaam'] == 'true') ? 'error' : ''; ?>"
/> *
</p>
<p>
<label class="field" for="achter" class="naast">Achternaam:</label>
<input type="text"
id="achter"
name="achternaam"
value="<?php echo isset($_SESSION['input']['achternaam']) ? $_SESSION['input']['achternaam'] : ''; ?>"
class="<?php echo (isset($_SESSION['errors']['achternaam']) && $_SESSION['errors']['achternaam'] == 'true') ? 'error' : ''; ?>"
/> *
</p>
<p>
<label class="field" for="mail" class="naast">Email:</label>
<input type="text"
id="mail"
name="email"
value="<?php echo isset($_SESSION['input']['email']) ? $_SESSION['input']['email'] : ''; ?>"
class="<?php echo (isset($_SESSION['errors']['email']) && $_SESSION['errors']['email'] == 'true') ? 'error' : ''; ?>"
/> *
</p>
<p>
<label class="field" for="mail2" class="naast">Hertyp Email:</label>
<input type="text"
id="mail2"
name="email2"
value="<?php echo isset($_SESSION['input']['email2']) ? $_SESSION['input']['email2'] : ''; ?>"
class="<?php echo (isset($_SESSION['errors']['email2']) && $_SESSION['errors']['email2'] == 'true') ? 'error' : ''; ?>"
/> *
</p>
<p>
<label class="field" for="postcode" class="naast">Postcode:</label>
<input type="text"
id="postcode"
name="postcode"
value="<?php echo isset($_SESSION['input']['postcode']) ? $_SESSION['input']['postcode'] : ''; ?>"
class="<?php echo (isset($_SESSION['errors']['postcode']) && $_SESSION['errors']['postcode'] == 'true') ? 'error' : ''; ?>"
/> * (1234)
</p>
<p>
<label class="field" for="woon" class="naast">Woonplaats:</label>
<input type="text"
id="woon"
name="woonplaats"
value="<?php echo isset($_SESSION['input']['woonplaats']) ? $_SESSION['input']['woonplaats'] : ''; ?>"
/>
</p>
<p>
<label class="field" for="geboortejaar" class="naast">Geboortejaar:</label>
<select id="geboortejaar" name="geboortejaar">
<?php
for($i = date('Y'); $i >= 1900; $i--)
{
if(isset($_SESSION['input']['geboortejaar']) && $_SESSION['input']['geboortejaar'] == $i)
{
echo '<option value="'.$i.'" selected="selected">'.$i.'</option>';
}
else
{
echo '<option value="'.$i.'">'.$i.'</option>';
}
}
?>
</select>
<p>
<input type="submit" value="Verzenden" class="lijnuit" />
</p>
</form>
<?php
// Weergeven van meldingen uit het phpscript.
if(isset($aErrors))
{
echo '<ul>';
foreach($aErrors as $sError)
{
echo '<li>'.$sError.'</li>';
}
echo '</ul>';
}
elseif(isset($aContent))
{
foreach($aContent as $sLine)
{
echo $sLine;
}
}
?>
</div>
</body>
</html>
Gewijzigd op 01/01/1970 01:00:00 door Arne
Gesponsorde koppelingen:
Je geeft in de functie CheckEmail2 maar 1 parameter op, daar moet je dan ook beide email adressen opgeven :
dit had ik al geprobeerd, maar dan herkend ie nog steeds de var niet
Warning: Missing argument 2 for checkEmail2() in C:\xampp\htdocs\PHP\Project\registreer.php on line 42
Notice: Undefined variable: sEmail in C:\xampp\htdocs\PHP\Project\registreer.php on line 45
heeft dit te maken met het feit dat sEmail geen static variabele is?
Warning: Missing argument 2 for checkEmail2() in C:\xampp\htdocs\PHP\Project\registreer.php on line 42
Notice: Undefined variable: sEmail in C:\xampp\htdocs\PHP\Project\registreer.php on line 45
heeft dit te maken met het feit dat sEmail geen static variabele is?
je mist de 2e parameter, die geef je dus niet mee wanneer je de functie aanroept. daar ligt het probleem
Je moet daarbij ook de functie met 2 parameters aanspreken:
ja dat zei Jim ook al, maar dit had ik al geprobeerd, en werkt dus niet
hoe krijg ik die twee var dan wel in die functie?
thx
hoe krijg ik die twee var dan wel in die functie?
thx
dan heb je het niet goed gedaan, de manier van Jim is toch echt hoe het moet
nosferatu schreef op 04.02.2010 11:02:
dan heb je het niet goed gedaan, de manier van Jim is toch echt hoe het moet
:D
function checkEmail($sEmail)
{
if(preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/i", $sEmail)) {
return $sEmail;
}}
function checkEmail2($sEmail2, $sEmail){
if (!$sEmail2 == $sEmail) {
NULL;
}
}
geeft
Warning: Missing argument 2 for checkEmail2() in C:\xampp\htdocs\PHP\Project\registreer.php on line 42
Notice: Undefined variable: sEmail in C:\xampp\htdocs\PHP\Project\registreer.php on line 45
{
if(preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/i", $sEmail)) {
return $sEmail;
}}
function checkEmail2($sEmail2, $sEmail){
if (!$sEmail2 == $sEmail) {
NULL;
}
}
geeft
Warning: Missing argument 2 for checkEmail2() in C:\xampp\htdocs\PHP\Project\registreer.php on line 42
Notice: Undefined variable: sEmail in C:\xampp\htdocs\PHP\Project\registreer.php on line 45
Arne:
Ten eerste: Je check klopt niet.
Ten tweede: Als je 2 arguments verwacht, moet er ook 2 geven (zie eerste error)
Code (php)
Ten eerste: Je check klopt niet.
Ten tweede: Als je 2 arguments verwacht, moet er ook 2 geven (zie eerste error)
Gewijzigd op 01/01/1970 01:00:00 door Thijs Damen
een foutmelding is meestal meer dan een teken dat IETS fout gaat, soms zegt het zelfs WAT er fout gaat :O
ok, eerst en vooral, thx al voor de moeite kerels
maar het probleem is eigenlijk
mijn checkmail2 functie word aangesproken door de filters
'email2' => array (
'filter' => FILTER_CALLBACK,
'options' => 'checkEmail2' ),
en ik denk dat ik daar al die tweede parameter moet gaan meegeven?
maar hoe dan?
maar het probleem is eigenlijk
mijn checkmail2 functie word aangesproken door de filters
'email2' => array (
'filter' => FILTER_CALLBACK,
'options' => 'checkEmail2' ),
en ik denk dat ik daar al die tweede parameter moet gaan meegeven?
maar hoe dan?
niet 100% zeker, maar daar is die functie niet voor bedoeld.
Je geeft aan 1 variable een filter op. niet aan 2.
Gewoon mijn code gebruiken,
ipv. returnen dit teruggeven. (bij failure)
Gaat je eigen foutafhandeling door. Worden je velden netjes rood gemaakt, krijg je een nette foutmelding en word je formulier niet gesubmit.
Je geeft aan 1 variable een filter op. niet aan 2.
Gewoon mijn code gebruiken,
ipv. returnen dit teruggeven. (bij failure)
Code (php)
1
2
3
4
5
2
3
4
5
<?php
$_SESSION['errors']['email1'] = true;
$_SESSION['errors']['email2'] = true;
$aErrors[] = 'De emailadressen zijn niet gelijk';
?>
$_SESSION['errors']['email1'] = true;
$_SESSION['errors']['email2'] = true;
$aErrors[] = 'De emailadressen zijn niet gelijk';
?>
Gaat je eigen foutafhandeling door. Worden je velden netjes rood gemaakt, krijg je een nette foutmelding en word je formulier niet gesubmit.
als je het toch echt niet via een 2e parameter wilt, kan je ook global gebruiken
de $sEmail die je wilt controleren moet dan elders in het script staan met dezelfde naam en de gewenste waarde
Code (php)
de $sEmail die je wilt controleren moet dan elders in het script staan met dezelfde naam en de gewenste waarde
@ nosferatu
dat is bijna wat ik aan het zoeken ben
de errors zijn weg
enkel is de global var nu leeg
function checkEmail2($sEmail2) {
global $sEmail;
if ($sEmail2 != $sEmail) {
echo $sEmail.'1-';
echo $sEmail2.'2-';
}
}
geeft 1-arne88@cbe.be2-
dus $sEmail = leeg als ik hem oproep via global
@Thijs
sorry, maar blijkbaar ken ik nog minder van php dan ik dacht
ik begrijp niet goed waar ik dat stukje code van jou dan moet zetten :(
dat is bijna wat ik aan het zoeken ben
de errors zijn weg
enkel is de global var nu leeg
function checkEmail2($sEmail2) {
global $sEmail;
if ($sEmail2 != $sEmail) {
echo $sEmail.'1-';
echo $sEmail2.'2-';
}
}
geeft 1-arne88@cbe.be2-
dus $sEmail = leeg als ik hem oproep via global
@Thijs
sorry, maar blijkbaar ken ik nog minder van php dan ik dacht
ik begrijp niet goed waar ik dat stukje code van jou dan moet zetten :(
Gewijzigd op 01/01/1970 01:00:00 door Arne
nosferatu schreef op 04.02.2010 11:26:
als je het toch echt niet via een 2e parameter wilt, kan je ook global gebruiken
de $sEmail die je wilt controleren moet dan elders in het script staan met dezelfde naam en de gewenste waarde
Code (php)
de $sEmail die je wilt controleren moet dan elders in het script staan met dezelfde naam en de gewenste waarde
auw....
Het kan wel, toch lijkthet me beter om de parameters rechtstreeks aan aan de functie door te geven. Het maakt de functie ook nuttiger en beter herbruikbaar!!
de variabele die je normaal gesproken mee zou geven aan de functie checkEmail2 (maar wat nu moeilijker word gezien ht filter gedoe) dat moet $sEmail worden, dus of je hernoemt hem of je doet $sEmail = $email (of hoe de oorspronkelijke email ook heet)
edit @jim
dit is een mogelijkheid, ik ben het met je eens dat het als een last resort moet worden gebruikt, andere alternatieven zijn zeer wss beter
edit @jim
dit is een mogelijkheid, ik ben het met je eens dat het als een last resort moet worden gebruikt, andere alternatieven zijn zeer wss beter
Gewijzigd op 01/01/1970 01:00:00 door Johan Dam
ok, nogmaals thanks
ik probeer nu gewoon de waarde die in email2 is ingevuld
in een variabele te steken
hoe krijg ik die waarde uit de ingeputte gegevens in die var
$sEmail = ?
ik probeer nu gewoon de waarde die in email2 is ingevuld
in een variabele te steken
hoe krijg ik die waarde uit de ingeputte gegevens in die var
$sEmail = ?
arne, waarom blijf je haken bij dat script. Ik heb je 100% code gegeven waarmee je het op een nette manier doet.
Wat je nu doet is vies, ranzig en gaat je nog veel meer gezeur opleveren.
Even een variabel globaal maken omdat die niet in je scope zit. Onzin.
De filter functie die jij gebruikt werkt gewoon niet met 2 variabelen. en ipv een normale oplossing verneuk je de rest van je code.
Wat je nu doet is vies, ranzig en gaat je nog veel meer gezeur opleveren.
Even een variabel globaal maken omdat die niet in je scope zit. Onzin.
De filter functie die jij gebruikt werkt gewoon niet met 2 variabelen. en ipv een normale oplossing verneuk je de rest van je code.
ok, bedankt thijs
heb uiteindelijk gekregen wat ik wou, maar ik begrijp dat het totaal fout is ...
ik ga mij maar eens gemakkelijker tutorialetje doen, waar ik op een normale manier een registreer formulier maak, valideer en naar database stuur ...
enige tips van zo een tutorial?
heb uiteindelijk gekregen wat ik wou, maar ik begrijp dat het totaal fout is ...
ik ga mij maar eens gemakkelijker tutorialetje doen, waar ik op een normale manier een registreer formulier maak, valideer en naar database stuur ...
enige tips van zo een tutorial?
Nee helaas niet.
Als je gaat zoeken raad ik je wel aan om een beetje recente tutorials te lezen. Tutorials van 3-4 jaar oud zijn echt zwaar outdated tegenwoordig. of ga een boek lezen :)
Als je gaat zoeken raad ik je wel aan om een beetje recente tutorials te lezen. Tutorials van 3-4 jaar oud zijn echt zwaar outdated tegenwoordig. of ga een boek lezen :)



