Passwoord wijzigen

Status
Niet open voor verdere reacties.

Maaarten

Gebruiker
Lid geworden
27 aug 2009
Berichten
52
Ik heb iets proberen maken om een passwoord te wijzigen maar dit werkt niet kunnen jullie mij helpen?

PHP:
<?php  
include("logincheck.php");

$gegevens = logincheck();

$username = $_POST['username']; 
$password = $_POST['password']; 
$newpassword = $_POST['newpassword']; 
$confirmnewpassword = $_POST['confirmnewpassword']; 


$mysql_id=mysql_connect("$dbhost","$dbuser","$dbpass");
$result = mysql_query("SELECT pass FROM Tbl_personeelsleden WHERE Id_Personeelsnummer='$username'"); 
 $res = mysql_db_query("$db","$sql",$mysql_id);
if(!$result)  
{  
echo "Username klopt niet";  
}  
else  
if($password!= mysql_result($result, 0))  
{  
echo "You entered an incorrect password";  
}  
if($newpassword=$confirmnewpassword)  
     $mysql_id=mysql_connect("$dbhost","$dbuser","$dbpass");
     $sql=mysql_query("UPDATE Tbl_personeelsleden SET pass='$newpassword' where Id_Personeelsnummer='$username'");  
		 $res = mysql_db_query("$db","$sql",$mysql_id);
    if($sql)  
    {  
    echo "Passwoord is veranderd!";  
    } 
else 
{  
echo "de velden zijn niet gelijk!";  
}
print" 
<tabel>
<tr>
<td><b>Peroneelsnummer:</b></td>
<td><INPUT TYPE="text" NAME="username" SIZE="20" MAXLENGTH="30"> </td>
</tr>
<tr>
<td>Paswoord </td>  
<td><INPUT TYPE="password" NAME="password" SIZE="20" MAXLENGTH="30">
</tr>
<tr>
<td>Nieuw Paswoord </td>  
<td><INPUT TYPE="password" NAME="newpassword" SIZE="20" MAXLENGTH="30">
</tr>
<tr>
<td>Herhaal Paswoord </td>  
<td><INPUT TYPE="password" NAME="confirmnewpassword" SIZE="20" MAXLENGTH="30">
</tr>
<tr>
<td><center><input type="submit" size="20" value="Login"></center></td>
</tr>
</table>

?>
 
Laatst bewerkt:
Check de highlighting.

Je kunt niet als je een echo of print opent met dubbele aanhalingstekens, zomaar dubbele aanhalingstekens gebruiken. Je moet ze 'escapen' om aan te geven dat het letterlijke tekens zijn en niet het einde van het commando.

Fout:
PHP:
echo "Dit zijn dubbele aanhalingstekens: " mooi he?";

Goed:
PHP:
echo "Dit zijn dubbele aanhalingstekens: \" mooi he?";

Zet dus overal een \ voor je " in je print statements, dat zou al aardig moeten schelen.

En zet in het vervolg ook in je post wat er fout gaat, dat helpt ons een heleboel.
 
Oke het is beetje aangepast.

http://kaoudenaarde.be/examen8/EXAMEN/gip2010/eindwerk/test.php

hier kan je kijken of het werkt. Er zit dus nog een fout op lijn 59?

Parse error: syntax error, unexpected $end in /home/beheerder/domains/kaoudenaarde.be/public_html/examen8/EXAMEN/gip2010/eindwerk/test.php on line 59
PHP:
<?php  
include("logincheck.php");

$gegevens = logincheck();
include("db_config.php");

$username = $_POST['username']; 
$password = $_POST['password']; 
$newpassword = $_POST['newpassword']; 
$confirmnewpassword = $_POST['confirmnewpassword']; 


$mysql_id=mysql_connect("$dbhost","$dbuser","$dbpass");
$result = mysql_query("SELECT pass FROM Tbl_personeelsleden WHERE Id_Personeelsnummer='$username'"); 
 $res = mysql_db_query("$db","$sql",$mysql_id);
if(!$result)  
{  
echo "Username klopt niet";  
}  
else  
if($password!= mysql_result($result, 0))  
{  
echo "You entered an incorrect password";  
}  
if($newpassword=$confirmnewpassword)  
     $mysql_id=mysql_connect("$dbhost","$dbuser","$dbpass");
     $sql=mysql_query("UPDATE Tbl_personeelsleden SET pass='$newpassword' where Id_Personeelsnummer='$username'");  
		 $res = mysql_db_query("$db","$sql",$mysql_id);
    if($sql)  
    {  
    echo "Passwoord is veranderd!";  
    } 
else 
{  
echo "de velden zijn niet gelijk!";  
}
print" 
<tabel>
<tr>
<td><b>Peroneelsnummer:</b></td>
<td><INPUT TYPE='text' NAME='username' SIZE='20' MAXLENGTH='30'> </td>
</tr>
<tr>
<td>Paswoord </td>  
<td><INPUT TYPE='password' NAME='password' SIZE='20' MAXLENGTH='30'>
</tr>
<tr>
<td>Nieuw Paswoord </td>  
<td><INPUT TYPE='password' NAME='newpassword' SIZE='20' MAXLENGTH='30'>
</tr>
<tr>
<td>Herhaal Paswoord </td>  
<td><INPUT TYPE='password' NAME='confirmnewpassword' SIZE='20' MAXLENGTH='30'>
</tr>
<tr>
<td><center><input type='submit' size='20' value='Login'></center></td>
</tr>
</table>

?>
 
Laatst bewerkt:
Je moet wel het print commando afsluiten met dubbele aanhalingstekens als het echt afgelopen is...
 
Waarom zou je deze HTML allemaal in PHP code willen hebben? Ziet toch niet uit zo, of heb ik dat alleen maar..
 
probeer de fouten eens beter op te vangen, bijvoorbeeld met mysql_error() op regels 18 en 31. Op regel 25 staat een vergelijking die niet klopt, probeer het eens met ==.

verder maak je twee keer een $res aan die je nergens gebruikt en zet je aanhalingstekens neer waar dat niet nodig is: wanneer je géén tekst in een variabele zet, maar simpelweg verwijst naar een andere variabele zijn quotes niet nodig.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan