Kan dit korter?
Pagina: « vorige 1 2 3 4 5 volgende »
Als je nog je variabelen bovenaan die je kopieert weg zou halen, is je code nog compacter. En verder wou je ook met array's nog wel wat kunnen uitvoeren, maar voor beginners is het compact maken van de code niet echt handig. Omdat de code wel onoverzichtelijker kan worden.
Gewijzigd op 13/10/2011 20:35:46 door - Ariën -
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
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
<?php
if(empty($vnaam))
{
echo "U heeft geen voornaam ingevoerd, probeer het nog eens.<br />";
echo "<a href='index.php'><input type='submit' value='Opnieuw' /></a>";
}
elseif(empty($anaam))
{
echo "U heeft geen achternaam ingevoerd, probeer het nog eens.<br />";
echo "<a href='index.php'><input type='submit' value='Opnieuw' /></a>";
}
elseif(empty($username))
{
echo "U heeft geen gebruikersnaam ingevoerd, probeer het nog eens.<br />";
echo "<a href='index.php'><input type='submit' value='Opnieuw' /></a>";
}
elseif(empty($trainer))
{
echo "U heeft geen trainer ingevoerd, probeer het nog eens.<br />";
echo "<a href='index.php'><input type='submit' value='Opnieuw' /></a>";
}
?>
if(empty($vnaam))
{
echo "U heeft geen voornaam ingevoerd, probeer het nog eens.<br />";
echo "<a href='index.php'><input type='submit' value='Opnieuw' /></a>";
}
elseif(empty($anaam))
{
echo "U heeft geen achternaam ingevoerd, probeer het nog eens.<br />";
echo "<a href='index.php'><input type='submit' value='Opnieuw' /></a>";
}
elseif(empty($username))
{
echo "U heeft geen gebruikersnaam ingevoerd, probeer het nog eens.<br />";
echo "<a href='index.php'><input type='submit' value='Opnieuw' /></a>";
}
elseif(empty($trainer))
{
echo "U heeft geen trainer ingevoerd, probeer het nog eens.<br />";
echo "<a href='index.php'><input type='submit' value='Opnieuw' /></a>";
}
?>
Misschien nog wel met array;s maar dat maakt de boel wel onoverzichtelijker.
Gewijzigd op 13/10/2011 20:39:14 door - Ariën -
Ja, oke dat is goed. Toch bedankt
- Aar - op 13/10/2011 19:53:58:
Dan is de shorthand niet functioneel. Die werkt alleen voor if-else.
De shorthand methode werkt ook bij if-elseif-else. Echter is dat zeker niet aan te raden omdat de code daardoor zeer onoverzichtelijk wordt, maar het kán wel.
Toevoeging op 13/10/2011 21:04:44:
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
<?php
$error = '';
if(empty($vnaam))
{
$error = 'voornaam';
}
elseif(empty($anaam))
{
$error = 'achternaam';
}
elseif(empty($username))
{
$error = 'gebruikersnaam';
}
elseif(empty($trainer))
{
$error = 'trainer';
}
if($error != '')
{
echo 'U heeft geen ' . $error . ' ingevoerd, probeer het nog eens.<br />';
echo '<a href="index.php">Opnieuw</a>';
}
?>
$error = '';
if(empty($vnaam))
{
$error = 'voornaam';
}
elseif(empty($anaam))
{
$error = 'achternaam';
}
elseif(empty($username))
{
$error = 'gebruikersnaam';
}
elseif(empty($trainer))
{
$error = 'trainer';
}
if($error != '')
{
echo 'U heeft geen ' . $error . ' ingevoerd, probeer het nog eens.<br />';
echo '<a href="index.php">Opnieuw</a>';
}
?>
Je kan in in <a href... geen deel van een formulier hebben staan.
Gewijzigd op 13/10/2011 21:07:14 door - SanThe -
Dit kan uiteraard ook, en bespaart een hoop strings.
- Aar - op 13/10/2011 21:06:44:
Dar heb je gelijk in, maar doelde op de trinairy-shorthand methode.
Dit kan uiteraard ook, en bespaart een hoop strings.
Dit kan uiteraard ook, en bespaart een hoop strings.
We bedoelen waarschijnlijk beiden de ternary-shorthand.
Maar daar kan ook if-elseif-elseif-else, alleen is dat dan bijna niet meer te lezen, oftewel zeer onoverzichtelijk.
Gewijzigd op 13/10/2011 21:29:59 door - SanThe -
Vergeet niet een foutmelding weer te geven wanneer geen van deze variabelen bestaat; dus voeg nog een else toe aan het einde.
EDIT: Ik zie dat je het hebt opgelost op een andere manier, maar dat kan makkelijker.
Gewijzigd op 13/10/2011 21:23:47 door PHP Scripter
Toevoeging op 13/10/2011 21:29:31:
Hoe kan ik trouwens de trim gebruiken??
Toevoeging op 13/10/2011 21:39:12:
Als ik deze code uitvoer, en ik vul niets in dan krijg ik alleen de eerste error te zien.
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
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
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
$error = array();
if(empty($_POST['voornaam']))
{
$error[] = "U heeft geen voornaam ingevoerd, probeer het nog eens.<br />";
}
elseif(empty($_POST['achternaam']))
{
$error[] = "U heeft geen achternaam ingevoerd, probeer het nog eens.<br />";
}
elseif(empty($_POST['username']))
{
$error[] = "U heeft geen gebruikersnaam ingevoerd, probeer het nog eens.<br />";
}
elseif($_POST['club'] == "kies")
{
$error[] = "U heeft geen geldige club ingevoerd, probeer het nog eens.<br />";
}
if(!empty($error))
{
foreach($error as $value)
{
echo $value;
}
}
else
{
echo "<fieldset style='width: 300px;'><legend>Controleer uw gegevens: </legend>";
echo "Voornaam: " . $vnaam . "<br />";
echo "Achternaam: " . $anaam . "<br />";
echo "Geboortedatum: " . $dag . "-" . $maand . "-" . $jaar . "<br />";
echo "Voetbal je? - ";
if($_POST['voetbal'] == "ja")
{
echo "Ja ik voetbal <br /><br />";
}
else
{
echo "Nee ik voetbal niet <br /><br />";
}
echo "Gebruikersnaam: " . $username . "<br />";
echo "Naam van de trainer: " . $trainer . "<br />";
echo "Uw club: " . "<b>". $club ."</b><br />";
echo "<input type='submit' name='submit' value='Bevestigen' />";
echo "<a href='index.php'><input type='submit' value='Opnieuw' /></a>";
echo "</fieldset>";
}
}
?>
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
$error = array();
if(empty($_POST['voornaam']))
{
$error[] = "U heeft geen voornaam ingevoerd, probeer het nog eens.<br />";
}
elseif(empty($_POST['achternaam']))
{
$error[] = "U heeft geen achternaam ingevoerd, probeer het nog eens.<br />";
}
elseif(empty($_POST['username']))
{
$error[] = "U heeft geen gebruikersnaam ingevoerd, probeer het nog eens.<br />";
}
elseif($_POST['club'] == "kies")
{
$error[] = "U heeft geen geldige club ingevoerd, probeer het nog eens.<br />";
}
if(!empty($error))
{
foreach($error as $value)
{
echo $value;
}
}
else
{
echo "<fieldset style='width: 300px;'><legend>Controleer uw gegevens: </legend>";
echo "Voornaam: " . $vnaam . "<br />";
echo "Achternaam: " . $anaam . "<br />";
echo "Geboortedatum: " . $dag . "-" . $maand . "-" . $jaar . "<br />";
echo "Voetbal je? - ";
if($_POST['voetbal'] == "ja")
{
echo "Ja ik voetbal <br /><br />";
}
else
{
echo "Nee ik voetbal niet <br /><br />";
}
echo "Gebruikersnaam: " . $username . "<br />";
echo "Naam van de trainer: " . $trainer . "<br />";
echo "Uw club: " . "<b>". $club ."</b><br />";
echo "<input type='submit' name='submit' value='Bevestigen' />";
echo "<a href='index.php'><input type='submit' value='Opnieuw' /></a>";
echo "</fieldset>";
}
}
?>
edit; oftewel vervang alle elseif door if en het werkt..
Gewijzigd op 13/10/2011 21:46:57 door Jaron T
Dankje
Jerry php op 13/10/2011 21:24:39:
Ja ik vond hem zelf nog iets te lang..
PHP is geen scripttaal waarmee je korte codes maakt, sommige dingen zijn nu eenmaal lang...
Jerry php op 13/10/2011 21:24:39:
Hoe kan ik trouwens de trim gebruiken??
Kijk nog eens terug naar de reactie die ik je heb gegevens over php.net en ga zelf eens op pad...
Jerry php op 13/10/2011 21:24:39:
Als ik deze code uitvoer, en ik vul niets in dan krijg ik alleen de eerste error te zien.
Ja, dat klopt. Weet je überhaupt wel wat elseif betekend en waar if naar kijkt? Aan je berichtjes te zien weet je niet hoe die statements werken. Zoek eens op php.net hoe het werkt.
Mag ik vragen waarom jij bijna bij elk probleem in 2 forums je probleem probeert opgelost te krijgen. Jij word hier geholpen en op andere forums.
Werkt dat makelijk denk je?
Gewijzigd op 13/10/2011 22:23:10 door Frank WD
Maar even iets anders, ik loop nu tegen een css probleem aan.
Dit is mijn code:
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
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
<!DOCname html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-name" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style type="text/css">
#maand
{
position: absolute;
margin-left: -113px;
}
#dag
{
position: absolute;
margin-left: -63px;
}
#fieldset
{
position: absolute;
top: 150px;
}
#sgegevens
{
position: absolute;
top: 180px;
margin-left: 50px;
}
#bgegevens
{
position: absolute;
margin-left: 50px;
}
#verplicht
{
position: absolute;
top: 196px;
margin-left: -2px;
}
#submit
{
position: absolute;
top: 185px;
margin-left: 115px;
}
#reset
{
position: absolute;
top: 185px;
margin-left: 205px;
}
a:link, a:visited
{
color: #000;
}
a:visited
{
color: #000;
}
</style>
</head>
<body>
<div id="formulier">
<form method="post" action="bevestigd.php">
<fieldset id="bgegevens" style="width: 300px; height: 372px;">
<table>
<legend><font color="#FF0000">*Belangrijke gegevens</font></legend>
<tr><td><label for="vname">Voornaam</label></td>
<td><input type="text" name="voornaam" id="vname"/></td></tr>
<tr><td><label for="aname">Achternaam</label></td>
<td><input type="text" name="achternaam" id="aname"/></td></tr>
<tr><td>
Geboortedatum
</td>
<td>
<select name="dag">
<?php
for($d=1;$d<=31;$d++)
{
echo "<option value=$d>" .$d. "</option>";
}
?>
</select>
</td>
<td id="maand">
<select name="maand">
<?php
for($m=1;$m<=12;$m++)
{
echo "<option value=$m>" .$m. "</option>";
}
?>
</select>
</td>
<td id="dag">
<select name="jaar">
<?php
for($j=1950;$j<=2011;$j++)
{
echo "<option value=$j>" .$j. "</option>";
}
?>
</select>
</td></tr>
<tr><td>Voetbal je?</td>
<td>
<select name = "voetbal">
<option value="ja">Ja</option>
<option value="nee">Nee</option>
</select>
</td></tr>
</table>
</fieldset>
<fieldset id="sgegevens" style="width: 300px; height: 200px;">
<legend><font color="#FF0000">*Spel gegevens</font></legend>
<table>
<tr><td><label for="nname">Gebruikersnaam</label></td>
<td><input type="text" name="username" id="nname" /></td></tr>
<tr><td><label for="pass">Wachtwoord</label></td>
<td><input type="text" name="password" id="pass" /></td></tr>
<tr><td> </td></tr>
<tr><td>Jouw club</td>
<td>
<select name="club">
<option value="kies">Kies hier je club</option>
<option value="club 1">club1</option>
<option value="club 2">club2</option>
<option value="club 3">club3</option>
<option value="club 4">club4</option>
<option value="club 5">club5</option>
<option value="club 6">club6</option>
<option value="club 7">club7</option>
<option value="club 8">club8</option>
<option value="club 9">club9</option>
<option value="club 10">club10</option>
</select>
</td></tr>
<tr><td><a href="voorwaarden.php">Voorwaarden</a></td> <td><input type="checkbox" name="voorwaarden"/></td></tr>
<tr><td id="verplicht" colspan="2"><font size="-2" color="#FF0000">*Deze velden zijn verplicht!</font></td></tr>
<tr><td id="submit"><input type="submit" value="Aanmelden" name="submit" /></td>
<td id="reset"><input type="Reset" value="Alles wissen" name="reset" /></td></tr>
</table>
</fieldset>
</form>
</div>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-name" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style type="text/css">
#maand
{
position: absolute;
margin-left: -113px;
}
#dag
{
position: absolute;
margin-left: -63px;
}
#fieldset
{
position: absolute;
top: 150px;
}
#sgegevens
{
position: absolute;
top: 180px;
margin-left: 50px;
}
#bgegevens
{
position: absolute;
margin-left: 50px;
}
#verplicht
{
position: absolute;
top: 196px;
margin-left: -2px;
}
#submit
{
position: absolute;
top: 185px;
margin-left: 115px;
}
#reset
{
position: absolute;
top: 185px;
margin-left: 205px;
}
a:link, a:visited
{
color: #000;
}
a:visited
{
color: #000;
}
</style>
</head>
<body>
<div id="formulier">
<form method="post" action="bevestigd.php">
<fieldset id="bgegevens" style="width: 300px; height: 372px;">
<table>
<legend><font color="#FF0000">*Belangrijke gegevens</font></legend>
<tr><td><label for="vname">Voornaam</label></td>
<td><input type="text" name="voornaam" id="vname"/></td></tr>
<tr><td><label for="aname">Achternaam</label></td>
<td><input type="text" name="achternaam" id="aname"/></td></tr>
<tr><td>
Geboortedatum
</td>
<td>
<select name="dag">
<?php
for($d=1;$d<=31;$d++)
{
echo "<option value=$d>" .$d. "</option>";
}
?>
</select>
</td>
<td id="maand">
<select name="maand">
<?php
for($m=1;$m<=12;$m++)
{
echo "<option value=$m>" .$m. "</option>";
}
?>
</select>
</td>
<td id="dag">
<select name="jaar">
<?php
for($j=1950;$j<=2011;$j++)
{
echo "<option value=$j>" .$j. "</option>";
}
?>
</select>
</td></tr>
<tr><td>Voetbal je?</td>
<td>
<select name = "voetbal">
<option value="ja">Ja</option>
<option value="nee">Nee</option>
</select>
</td></tr>
</table>
</fieldset>
<fieldset id="sgegevens" style="width: 300px; height: 200px;">
<legend><font color="#FF0000">*Spel gegevens</font></legend>
<table>
<tr><td><label for="nname">Gebruikersnaam</label></td>
<td><input type="text" name="username" id="nname" /></td></tr>
<tr><td><label for="pass">Wachtwoord</label></td>
<td><input type="text" name="password" id="pass" /></td></tr>
<tr><td> </td></tr>
<tr><td>Jouw club</td>
<td>
<select name="club">
<option value="kies">Kies hier je club</option>
<option value="club 1">club1</option>
<option value="club 2">club2</option>
<option value="club 3">club3</option>
<option value="club 4">club4</option>
<option value="club 5">club5</option>
<option value="club 6">club6</option>
<option value="club 7">club7</option>
<option value="club 8">club8</option>
<option value="club 9">club9</option>
<option value="club 10">club10</option>
</select>
</td></tr>
<tr><td><a href="voorwaarden.php">Voorwaarden</a></td> <td><input type="checkbox" name="voorwaarden"/></td></tr>
<tr><td id="verplicht" colspan="2"><font size="-2" color="#FF0000">*Deze velden zijn verplicht!</font></td></tr>
<tr><td id="submit"><input type="submit" value="Aanmelden" name="submit" /></td>
<td id="reset"><input type="Reset" value="Alles wissen" name="reset" /></td></tr>
</table>
</fieldset>
</form>
</div>
</body>
</html>
En als ik deze css toevoeg (de divs staan er al) krijg ik een verschuiving tussen de 2 formulieren, dan gaat de ene ineens meer omhoog, terwijl dat ik dat niet heb gevragen:
Dit is de site (http://dj-jeremy.nl/index.php) dan zie je dat hij onderaan de balk van het formulier niet helemaal meer gelijk is, terwijl als ik de #formulier div weg haal, is hij dat wel
Gewijzigd op 13/10/2011 22:26:47 door Jerry php
Was je ook al vertel in een ander forum.
Daarbij hou je style en html eens apart.
Houd je pagina een stuk overzichtelijke mee
Gewijzigd op 13/10/2011 22:32:21 door Frank WD
Frank van sloten op 13/10/2011 22:32:09:
Ik begrijp nu niet zo goed wat ik ermee moet, want waarom zet je het nu in een php stukje? En dat valt toch wel mee, is denk persoonlijk, ik hou namelijk niet steeds van switchen, en ik vind het wel fijn om naar boven te scrollen
En dat php troep kun je weg laten en je div veranderen naar class="formulier"
Ik volg al dagen jij topic's zowel hier als op het andere forum.
Maar net zoals de rest al eens heeft verteld. Jij mist gewoon een klap basis kennis zowel html, php, mysql en css. Probeer deze eens op te krikken.
Mijn persoonlijke mening is dat je te veel wilt met je kennis.
Die php-tags hebben niks met je css te maken, zal wel een gewenning zijn van Frank :-P
Dus nog steeds geen antwoord
CSS ==! PHP oftewel, CSS is niet gelijk aan PHP. Die php-tags zijn niet nodig...
Is waarschijnlijk een gewenning van Frank?
Op welk forum zit je nog meer als ik vragen mag?
Gewijzigd op 13/10/2011 22:44:37 door - Ariën -