Parse error
Ik kom er maar niet uit.... Als ik dit script aanroep krijg ik steeds dit: Parse error: parse error in G:\server\htdocs\script\register.php on line 85
Het 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
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
<?php
//Global includes
require('INC/config.php');
require('INC/functions.php');
//Controlleer of de post var is gezet (en dus alles ingevoerd)... zoja controlleer gegevens en voeg toe aan db, zonee: toon form
if(!isset($_POST['issetcheck']))
{
echo "<html><body>";
?>
<form action='<?php echo $_SERVER['PHP_SELF']; ?>' method='post'>
<input type='hidden' name='issetcheck' value='yes'>
Gebruikersnaam: <input type='text' name='naam'><br>
E-mail: <input type='text' name='email'><br>
E-mail (validatie): <input type='text' name='emailval'><br>
Wachtwoord: <input type='password' name='wachtwoord'><br>
Wachtwoord (validatie): <input type='password' name='wachtwoordval'><br>
<input type='submit' value='Verstuur!'>
</form>
<?php
}
else{
//Check 1, controlleer of alles is ingevuld
if(empty($_POST['naam']) || empty($_POST['email']) || empty($_POST['emailval']) || empty($_POST['wachtwoord']) || empty($_POST['wachtwoordval']))
{
echo "U heeft één of meerdere gegevens niet correct ingevuld! <a href='" . $_SERVER['PHP_SELF'] . "'>Klik hier om nogmaals te proberen.</a>";
}
else{
//Check 2, controlleer of de wachtwoorden en e-mail adressen matchen
if($_POST['email'] !== $_POST['emailval'] || $_POST['wachtwoord'] !== $_POST['wachtwoordval']){
echo "De e-mail adressen en/of de wachtwoorden komen niet overeen! <a href='" . $_SERVER['PHP_SELF'] . "'>Klik hier om nogmaals te proberen.</a>";
}
else{
//Check 3, controlleer of de gebruikersnaam of het e-mail adres al bestaat
$fetch_users = do_query('SELECT * FROM `leden` LIMIT 0 , 30');
while($users = mysql_fetch_assoc($fetch_users)){
//Als gebruikersnaam bestaat zet $nameconsists dan op true
if($users['naam'] == $_POST['naam']){
$nameconsists = 1;
}
else{
$nameconsists = 0;
}
//Als e-mail al bestaat zet $emailconsists dan op true
if($users['email'] == $_POST['email']){
$emailconsists = 1;
}
else{
$emailconsists = 0;
}
//Ok... Als één van beide 'consists' true is, toon dit dan... voeg de nieuwe gebruiker anders toe aan de database
if($nameconsists == true){
echo "De door u gekoze naam bestaat al in onze database. Kies alstublieft een andere! <a href='" . $_SERVER['PHP_SELF'] . "'>Klik hier om nogmaals te proberen.</a>";
}
elseif($emailconsists == true){
echo "Het door u gekoze e-mail adres bestaat al in onze database. Kies alstubloeft een andere! <a href='" . $_SERVER['PHP_SELF'] . "'>Klik hier om nogmaals te proberen.</a>";
}
else{
$ip = $_SERVER['REMOTE_ADDR'];
$wachtwoord = sha1(strtolower($_POST['naam']) . $_POST['wachtwoord']);
//Voeg toe aan database
do_query("
INSERT INTO `usened`.`leden` (`naam`, `email`, `wachtwoord`, `regip`, `lvl`)
VALUES ('$_POST[naam]', '$_POST[email]', '$wachtwoord', '$ip', '2');
");
}
}
}
}
?>
//Global includes
require('INC/config.php');
require('INC/functions.php');
//Controlleer of de post var is gezet (en dus alles ingevoerd)... zoja controlleer gegevens en voeg toe aan db, zonee: toon form
if(!isset($_POST['issetcheck']))
{
echo "<html><body>";
?>
<form action='<?php echo $_SERVER['PHP_SELF']; ?>' method='post'>
<input type='hidden' name='issetcheck' value='yes'>
Gebruikersnaam: <input type='text' name='naam'><br>
E-mail: <input type='text' name='email'><br>
E-mail (validatie): <input type='text' name='emailval'><br>
Wachtwoord: <input type='password' name='wachtwoord'><br>
Wachtwoord (validatie): <input type='password' name='wachtwoordval'><br>
<input type='submit' value='Verstuur!'>
</form>
<?php
}
else{
//Check 1, controlleer of alles is ingevuld
if(empty($_POST['naam']) || empty($_POST['email']) || empty($_POST['emailval']) || empty($_POST['wachtwoord']) || empty($_POST['wachtwoordval']))
{
echo "U heeft één of meerdere gegevens niet correct ingevuld! <a href='" . $_SERVER['PHP_SELF'] . "'>Klik hier om nogmaals te proberen.</a>";
}
else{
//Check 2, controlleer of de wachtwoorden en e-mail adressen matchen
if($_POST['email'] !== $_POST['emailval'] || $_POST['wachtwoord'] !== $_POST['wachtwoordval']){
echo "De e-mail adressen en/of de wachtwoorden komen niet overeen! <a href='" . $_SERVER['PHP_SELF'] . "'>Klik hier om nogmaals te proberen.</a>";
}
else{
//Check 3, controlleer of de gebruikersnaam of het e-mail adres al bestaat
$fetch_users = do_query('SELECT * FROM `leden` LIMIT 0 , 30');
while($users = mysql_fetch_assoc($fetch_users)){
//Als gebruikersnaam bestaat zet $nameconsists dan op true
if($users['naam'] == $_POST['naam']){
$nameconsists = 1;
}
else{
$nameconsists = 0;
}
//Als e-mail al bestaat zet $emailconsists dan op true
if($users['email'] == $_POST['email']){
$emailconsists = 1;
}
else{
$emailconsists = 0;
}
//Ok... Als één van beide 'consists' true is, toon dit dan... voeg de nieuwe gebruiker anders toe aan de database
if($nameconsists == true){
echo "De door u gekoze naam bestaat al in onze database. Kies alstublieft een andere! <a href='" . $_SERVER['PHP_SELF'] . "'>Klik hier om nogmaals te proberen.</a>";
}
elseif($emailconsists == true){
echo "Het door u gekoze e-mail adres bestaat al in onze database. Kies alstubloeft een andere! <a href='" . $_SERVER['PHP_SELF'] . "'>Klik hier om nogmaals te proberen.</a>";
}
else{
$ip = $_SERVER['REMOTE_ADDR'];
$wachtwoord = sha1(strtolower($_POST['naam']) . $_POST['wachtwoord']);
//Voeg toe aan database
do_query("
INSERT INTO `usened`.`leden` (`naam`, `email`, `wachtwoord`, `regip`, `lvl`)
VALUES ('$_POST[naam]', '$_POST[email]', '$wachtwoord', '$ip', '2');
");
}
}
}
}
?>
Iemand een idee hoe dit komt?
Kijk al je if statements nog eens door.
Er mist een } aan de onderkant van je script.
Zo maak je het voor jezelf overzichtelijker. Je else blok zou best op de zelfde verticale lijn staan als de if blok.
Verder: als je een goeie editor gebruikt, word je automatisch gewaarschuwd bij welk openen van een haakje / accolade het sluiten er van hoort.
Ik heb het nogal voor notepad2.exe, maar er zijn er nog.
Het werkt btw... Ik had de while lus niet gesloten....
Dreamweaver is een leuke editor maar laat op het gebied van PHP ondersteuning nog wel eens wat te wensen over. Je zou bijvoorbeeld eens kunnen kijken naar Eclipse PDT, een hele goede IDE en bovendien opensource.
Eclipse is inderdaad tegenwoordig ook aan te raden, vroeger vond ik dat wat lomp.
Ik heb Notepad++ en die vind ik heel goed om script talen (SQL, PHP, Ruby) te schrijven.
Als je vooral met PHP, CSS, JavaScript en HTML bezig bent, zou ik toch voor phpDesigner 2008 gaan (is er inmiddels niet al 2009?). Het bevat veel extra tooltjes die ik niet vaak heb gezien in andere editors en het gebruikt een duidelijke highlighting. Tijdens het scripten worden ook parse errors e.d. zoals deze aangegeven. Ben je daar dus ook meteen vanaf ;-).