login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Wachtwoord wijzigen

Offline Frederic - 14/06/2005 21:27 (laatste wijziging 14/06/2005 21:32)
Avatar van FredericPHP ver gevorderde Hoe kan het dat als ik m'n wachtwoord wil wijzigen dat ik ALTIJD de melding krijg dat mijn oud paswoord niet klopt (ook al vul ik niets in in de velden, dan krijg ik die melding nog evenzeer!)
  1. <form name="wachtwoord" method="post" action="">
  2. <input type="password" name="oud_wachtwoord" size="25" />
  3. <input type="password" name="nieuw_wachtwoord" size="25" />
  4. <input type="password" name="nieuw_wachtwoord2" size="25" /> <input type="submit" name="submit" value="Wijzigen" />
  5. </form>
  6. <?php
  7. if(isset($_POST['submit'])) {
  8. if ( (isset($_POST['oud_wachtwoord'])) && (isset($_POST['nieuw_wachtwoord'])) && (isset($_POST['nieuw_wachtwoord2'])) ){
  9. if (($_POST['nieuw_wachtwoord']) != ($_POST['nieuw_wachtwoord2'])){
  10. header("Location: index.php?Pagina=mijn_profiel&mode=wachtwoord_wijzigen&melding=De 2 nieuwe wachtwoorden komen niet overeen!");
  11. }
  12. else{
  13. $wachtwoord_check = mysql_result(mysql_query("SELECT COUNT(id) FROM leden WHERE wachtwoord='".$_POST['oud_wachtwoord']."' && id='".$_SESSION['gid']."' && gebruikersnaam='".$_SESSION['gebruiker']."'"),0);
  14. if($wachtwoord_check == 0) {
  15. header("Location: index.php?Pagina=mijn_profiel&mode=wachtwoord_wijzigen&melding=Je oud wachtwoord klopt niet!");
  16. }
  17. else
  18. {
  19. if(!@mysql_query("UPDATE leden SET wachtwoord='".$_POST['nieuw_wachtwoord2']."' WHERE WHERE wachtwoord='".$_POST['oud_wachtwoord']." && id='".$_SESSION['gid']." && gebruikersnaam='".$_SESSION['gebruiker']."'"))
  20. {
  21. header("Location: index.php?Pagina=mijn_profiel&mode=wachtwoord_wijzigen&melding=Updaten mislukt!");
  22. }
  23. }
  24. }
  25.  
  26. }
  27. else{
  28. header("Location: index.php?Pagina=mijn_profiel&mode=wachtwoord_wijzigen&melding=Je hebt niet alles ingevuld!");
  29. }
  30. }
  31. ?>

5 antwoorden

Gesponsorde links
Offline Stijn - 14/06/2005 21:39 (laatste wijziging 14/06/2005 21:44)
Avatar van Stijn PHP expert je moet je url coderen van melding. Gebruik eens urlencode() voor je URL in je header();

en om terug te echoën gebruik je best: urldecode()
Offline ikkedikke - 14/06/2005 22:31
Avatar van ikkedikke PHP expert die laatste query heb je 2 X WHERE In staan;-)
if(!@mysql_query(".... WHERE WHERE wachtwoord..."))
als je die @ had weggelaten ahd je het geweten;-)
Offline leendertW - 14/06/2005 22:36
Avatar van leendertW PHP beginner dusssss.....


Als je een script aan het schrijven bent onderdruk dan ook NOOIT de fouten want dan loop je jezelf tegen het lijf.
Offline Stijn - 15/06/2005 11:04
Avatar van Stijn PHP expert
  1. <?php
  2. else{
  3. $wachtwoord_check = mysql_num_rows(mysql_query("SELECT COUNT(id) FROM leden WHERE wachtwoord='".$_POST['oud_wachtwoord']."' && id='".$_SESSION['gid']."' && gebruikersnaam='".$_SESSION['gebruiker']."'"),0);//de functie num_rows telt het aantal rijen die hij geselecteerd heeft.
  4. if($wachtwoord_check == 0) {
  5. urlencode(header("Location: index.php?Pagina=mijn_profiel&mode=wachtwoord_wijzigen&melding=Je oud wachtwoord klopt niet!")); //urlencode voor je melding te coderen in bla bla => bla+bla
  6. }
  7. else
  8. {
  9. if(!@mysql_query("UPDATE leden SET wachtwoord='".$_POST['nieuw_wachtwoord2']."' WHERE wachtwoord='".$_POST['oud_wachtwoord']." && id='".$_SESSION['gid']." && gebruikersnaam='".$_SESSION['gebruiker']."'")) //2x Where
  10. {
  11. urlencode(header("Location: index.php?Pagina=mijn_profiel&mode=wachtwoord_wijzigen&melding=Updaten mislukt!"));
  12. }
  13. }
  14. ?>


en dan kan je op pagina mijn_profiel echoën:
---mijn_profiel---
  1. <?
  2. $melding = urldecode($_GET['melding']);
  3. echo $melding;
  4. ?>


groeten stijn 
Offline xSc - 15/06/2005 12:47
Avatar van xSc Onbekend Foutenonderdrukken kan inderdaad handig zijn, maar niet als je aan het scripten bent. Als je pagina operationeel is, ben ik wel voorstander van onderdrukken. Je geeft dan gewoon 'customized' foutmeldingen weer. Dit voorkomt dat er teveel belangrijke 'achtergrondinformatie' beschikbaar komt.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.293s