[PHP/MySQL] Wachtwoord wijzigen script werkt niet
Ik zal er wel gigantisch overheen kijken maar ik kan de fout niet vinden in mijn script. Ik wil een script maken waarmee ik een wachtwoord in de database aan kan passen.
De tabel waar het om gaat ziet er zo uit:
id
username
password
Wanneer ik het script oproep dan krijg ik een volledig witte pagina, ik snap niet wat er mis gaat.
Ik hoop dat iemand me kan helpen, alvast bedankt!
De tabel waar het om gaat ziet er zo uit:
id
username
password
Wanneer ik het script oproep dan krijg ik een volledig witte pagina, ik snap niet wat er mis gaat.
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
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
<?
ini_set ('display_errors', 1);
error_reporting (E_ALL);
mysql_connect ('***','***','***') or die ('Kan niet verbinden met database!');
mysql_select_db ('***') or die ('Kan database niet vinden');
if(isset($_POST['username'])) {
$username = $_POST['username'];
$wachtwoordoud = sha1($_POST['wachtwoordoud']);
$wachtwoordnieuw = sha1($_POST['wachtwoordnieuw']);
$wachtwoordnieuw2 = sha1($_POST['wachtwoordnieuw2']);
$fout = '';
if(empty($wachtwoordoud) OR empty($wachtwoordnieuw) OR empty($wachtwoordnieuw2)) {
$fout = 'Je bent een veld vergeten in te vullen';
}
elseif($wachtwoordnieuw != $wachtwoordnieuw2) {
$fout = 'De nieuwe wachtwoorden komen niet overheen';
}
$query1 = "SELECT * FROM gebruikers WHERE username='".$_POST['username']."'";
$result1 = mysql_query($query1) or die(mysql_error());
$row = mysql_fetch_assoc ($result1);
elseif($wachtwoordoud != $row['wachtwoord'] {
$fout = 'Je hebt het verkeerde wachtwoord ingevoerd';
}
elseif(!empty($fout)) {
echo $fout;
}
elseif(empty($fout)) {
$query2 = "UPDATE gebruikers SET wachtwoord='".$wachtwoordnieuw."' WHERE naam='".$_POST['username']."'";
mysql_query($query2);
if(!$query2)die("Fout met het veranderen van het wachtwoord");
echo 'Je hebt je wachtwoord succesvol veranderd';
}
}
else {
echo '<form method="post" action="?">';
echo 'Gebruikersnaam<br><input type="text" name="username"><br>';
echo 'Oude wachtwoord<br><input type="password" name="wachtwoordoud"><br>';
echo 'Nieuwe wachtwoord<br><input type="password" name="wachtwoordnieuw"><br>';
echo 'Nieuwe wachtwoord controle<br><input type="password" name="wachtwoordnieuw2"><br>';
echo '<input type="submit" name="submit" value="Veranderen"><br>';
echo '</form>';
}
?>
ini_set ('display_errors', 1);
error_reporting (E_ALL);
mysql_connect ('***','***','***') or die ('Kan niet verbinden met database!');
mysql_select_db ('***') or die ('Kan database niet vinden');
if(isset($_POST['username'])) {
$username = $_POST['username'];
$wachtwoordoud = sha1($_POST['wachtwoordoud']);
$wachtwoordnieuw = sha1($_POST['wachtwoordnieuw']);
$wachtwoordnieuw2 = sha1($_POST['wachtwoordnieuw2']);
$fout = '';
if(empty($wachtwoordoud) OR empty($wachtwoordnieuw) OR empty($wachtwoordnieuw2)) {
$fout = 'Je bent een veld vergeten in te vullen';
}
elseif($wachtwoordnieuw != $wachtwoordnieuw2) {
$fout = 'De nieuwe wachtwoorden komen niet overheen';
}
$query1 = "SELECT * FROM gebruikers WHERE username='".$_POST['username']."'";
$result1 = mysql_query($query1) or die(mysql_error());
$row = mysql_fetch_assoc ($result1);
elseif($wachtwoordoud != $row['wachtwoord'] {
$fout = 'Je hebt het verkeerde wachtwoord ingevoerd';
}
elseif(!empty($fout)) {
echo $fout;
}
elseif(empty($fout)) {
$query2 = "UPDATE gebruikers SET wachtwoord='".$wachtwoordnieuw."' WHERE naam='".$_POST['username']."'";
mysql_query($query2);
if(!$query2)die("Fout met het veranderen van het wachtwoord");
echo 'Je hebt je wachtwoord succesvol veranderd';
}
}
else {
echo '<form method="post" action="?">';
echo 'Gebruikersnaam<br><input type="text" name="username"><br>';
echo 'Oude wachtwoord<br><input type="password" name="wachtwoordoud"><br>';
echo 'Nieuwe wachtwoord<br><input type="password" name="wachtwoordnieuw"><br>';
echo 'Nieuwe wachtwoord controle<br><input type="password" name="wachtwoordnieuw2"><br>';
echo '<input type="submit" name="submit" value="Veranderen"><br>';
echo '</form>';
}
?>
Ik hoop dat iemand me kan helpen, alvast bedankt!
Geen foutafhandeling met betrekking tot de SQL commando's.
Ga daar eens naar kijken.
Zou al een hoop fouten naar het licht kunnen brengen.
Ga daar eens naar kijken.
Zou al een hoop fouten naar het licht kunnen brengen.
De grootste fout zit hier:
Dat zou zoiets moeten worden:
Code (php)
Dat zou zoiets moeten worden:
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
<?php
elseif(empty($fout)) {
$query2 = "
UPDATE gebruikers
SET wachtwoord = '" . $wachtwoordnieuw . "'
WHERE naam = '" . mysql_real_escape_string ($_POST['username']) . "'"
;
if ($res = mysql_query($query2)) {
if (mysql_affected_rows () == 1) {
echo 'Je hebt je wachtwoord succesvol veranderd';
}
}
?>
elseif(empty($fout)) {
$query2 = "
UPDATE gebruikers
SET wachtwoord = '" . $wachtwoordnieuw . "'
WHERE naam = '" . mysql_real_escape_string ($_POST['username']) . "'"
;
if ($res = mysql_query($query2)) {
if (mysql_affected_rows () == 1) {
echo 'Je hebt je wachtwoord succesvol veranderd';
}
}
?>




