ww wijzigen script werkt niet ( Undefined variable )

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Lars Hallow

Lars Hallow

23/01/2012 16:29:46
Quote Anchor link
Beste php hulpers,

Ik ben bezig met een wachtwoord wijzigen scriptje.
Helaas loop ik steeds tegen een paar fouten aan...

Ik hoop dat jullie mij kunnen helpen momenteel snap ik niet waarom ik de volgende foutmelding krijg:

Notice: Undefined variable: bekijk in C:\xampp\htdocs\Password-change.php on line 21

Voor de duidelijkheid:

In mysql heet wachtwoord: password.
En wanneer het invulveld wachtwoord en wachtwoord 2 overeenkomen moet hij dat updaten naar password in mysql, dat is de bedoeling.

hierbij het stukje script waarin volgens mij de fout zit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php

if( $_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['button']) ){
        if($_POST['wachtwoord'] == $_POST['wachtwoord2']){
                
                
                if(md5($_POST['oudwachtwoord']) == $bekijk->password){
                
                    $wachtwoord = $_POST['wachtwoord'];
                    
                    mysql_query("UPDATE members SET password='".md5($password)."' WHERE member_id='".$lid['member_id']."'") OR die(mysql_error());
                    echo "Gegevens opgeslagen. Ogenblik !";
                }
                    
                else{
                    echo ("Je 'oude' wachtwoord komt NIET overeen met je 'huidige' wachtwoord");
                }
            }

            else{
                echo ("De nieuwe wachtwoorden komen NIET overeen!");
            }

    if(empty($_POST['wachtwoord'])){
        echo "Geen wachtwoord opgegeven";
    }

    elseif(empty($_POST['wachtwoord2'])){
        echo "Geen wachtwoord2 opgegeven";  
    }
    
      
}

?>


Hopelijk dat jullie mij verder kunnen helpen, alvast bedankt. ( bij behoefte aan meer script kan ik dat altijd posten :) )
 
PHP hulp

PHP hulp

22/12/2024 19:45:19
 
Erwin H

Erwin H

23/01/2012 16:35:57
Quote Anchor link
Melding spreekt volgens mij redelijk voor zich. Variabele $bekijk bestaat nog niet op het moment dat je hem wil aanspreken. Die moet je dus eerst declareren, waar heb je dat gedaan? Zo te zien is het een object, dus je moet dat object aanmaken.
 
Lars Hallow

Lars Hallow

23/01/2012 16:40:09
Quote Anchor link
voor de duidelijkheid dit is regel 21:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
if(md5($_POST['oudwachtwoord']) == $bekijk->password)
?>


Kan ik niet later in het script een veld definiëren als oudwachtwoord ?

Hij moet alleen controleren of het ingevulde oudewachtwoord gelijk is aan het huidige wachtwoord in mysql.
Gewijzigd op 23/01/2012 16:41:06 door Lars Hallow
 

23/01/2012 16:43:35
Quote Anchor link
Dan moet je wel het wachtwoord ophalen (want $bekijk->password bestaat niet), Lars. Ook vind ik niet terug waar je $lid['member_id'] vandaan haalt.

Ook is die() not done als foutafhandeling, ga beter voor trigger_error of een zelfgemaakte foutafhandeling. Ook zou ik nog gaan voor de nieuwere versie van mysql_query (mysqli_query) als dit mogelijk is (PHP versie).
Gewijzigd op 23/01/2012 16:51:06 door
 
- SanThe -

- SanThe -

23/01/2012 16:45:06
Quote Anchor link
$bekijk->password bestaat niet.
 
Lars Hallow

Lars Hallow

23/01/2012 16:49:56
Quote Anchor link
Thanks, ga even verder knutselen :)
 

23/01/2012 17:13:10
Quote Anchor link
Ook zou ik wachtwoorden met een salt opslaan in een database en dus niet gewoon md5($wachtwoord). Maar zoiets als hash('whirlpool', $salt.$wachtwoord).
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.