Avatar billede delphiuser Mester
20. januar 2009 - 18:57 Der er 2 kommentarer og
1 løsning

Forny password og tjek gammelt password.

Hej Eksperter

Jeg er igang med at lave en side hvor man skal kunne ændre sit password. for at kunne ændre det skal man indtaste det gamle password ind 1 gang og det nye skal tastes 2 gange.

det virker også som sådan. har bare lige en enkel ulempe i scriptet. og det er at den ændre alle passwords der ligger i min tabel. håber i kan hjælpe mig med hvad jeg skulle have gjort forkert.

her kommer min side der hedder kode.php

<table border="0" cellpadding="0" cellspacing="0" width="300" style="margin-top:10px;">
<form action="<?php $PHP_SELF; ?>" method="post">
<tr><td colspan="3" align="center">Skift Adgangskode</td></tr>
<tr><td width="150">Gammelt Kodeord</td><td width="10">:</td><td width="140"><input type="password" name="pass" style="width:140px;"></td></tr>
<tr><td width="150">Nyt Kodeord</td><td width="10">:</td><td width="140"><input type="password" name="pass1" style="width:140px;"></td></tr>
<tr><td width="150">Gentag Kodeord</td><td width="10">:</td><td width="140"><input type="password" name="pass2" style="width:140px;"></td></tr>
<tr><td colspan="3"><input type="submit" name="submit" value="Skift Adgangskode"></td></tr>
</form>
</table>
<?php
if (isset($_POST['submit'])) {
    if(isset($_POST['pass']) && isset($_POST['pass1']) && isset($_POST['pass2'])) {
        $check = mysql_query("select * from stgr where sid='".$_SESSION['sid']."' and pass='$pass'") or die(mysql_error());
        $ok = mysql_num_rows($check);
        echo $ok;
            if($pass1 == $pass2) {
                if($ok == 1) {
                    $update = mysql_query("UPDATE stgr SET pass = '$pass1'") or die(mysql_error());
                    echo 'Dit password er nu ændret...';
                    }
                } else {
                echo 'Det nye password var ikke tastet ind ens...';
                }
            } else {
            echo 'Alle felter skal udfyldes...';
        }
    }
?>

på forhånd tak for hjælpen...
Avatar billede majbom Novice
20. januar 2009 - 19:08 #1
du skal lige angive hvilken linje i din tabel der skal opdateres..

$update = mysql_query("UPDATE stgr SET pass = '$pass1'") or die(mysql_error());

skal rettes til:

$update = mysql_query("UPDATE stgr SET pass = '$pass1' WHERE sid='$_SESSION[sid]'") or die(mysql_error());
Avatar billede delphiuser Mester
20. januar 2009 - 19:46 #2
Takker her er pointene
Avatar billede majbom Novice
20. januar 2009 - 19:54 #3
selv tak :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester