• 26-12-2012, 11:17:35
    #1
    Selamlar, aşağıdaki gibi bir şifre değiştirme sayfası yazdım ancak hata alıyorum. Benim gözümden kaçan bir hata mı var diye size sormak istedim.

    <?php
    ob_start();
    include('module_includes/sessions.php');
    
    $old_pass = $_POST['old_pass'];
    $new_pass = $_POST['new_pass'];
    $new_pass2 = $_POST['new_pass2'];
    
    $coded_old_pass = sha1($old_pass);
    $coded_new_pass = sha1($new_pass2);
    $kullanici_id = $session_list['CRM1101'];
    
    $eski_sifre_kontrol = mysql_query("select * from CRM1001 where CRM1112 LIKE '".$coded_old_pass."' WHERE CRM1101 = $kullanici_id");
    $eski_sifre = mysql_fetch_assoc($eski_sifre_kontrol);
    $eski_sifre_sayi = mysql_num_rows($eski_sifre);
    $toplam_eski_sifre = $eski_sifre_sayi;
    
    if ($toplam_eski_sifre == 0) {
    echo $toplam_eski_sifre;
    }
    else
    {
    $sifre_guncelle = mysql_query("UPDATE CRM1001 SET CRM1112 = '$coded_new_pass' WHERE CRM1101 = $kullanici_id LIMIT 1");
    header("Refresh: 0; url=dashboard.php");
    }
    
    
    ?>
    Aldığım Hatalar :

    Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/dertli/public_html/ilgisoftware/modules/TestModul/do_change_password.php on line 15
    
    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/dertli/public_html/ilgisoftware/modules/TestModul/do_change_password.php on line 16
    15. Satır
    $eski_sifre = mysql_fetch_assoc($eski_sifre_kontrol);
    16. Satır
    $eski_sifre_sayi = mysql_num_rows($eski_sifre);

    Sanırım sorgumda hata buluyor, bu yüzden de toplamıda almıyor gibi geldi bana. Ama gözümden bişeyler kaçmış büyük ihtimalle.
  • 27-12-2012, 00:03:35
    #2
    Sorgulaman yanlış, bi örnek vereyim ona göre tek satırla yap sorgunu;

    mysql_query("UPDATE TABLOADI SET ŞİFRESÜTUNU = '$coded_new_pass' WHERE KULLANICI_ID_SÜTUNU='$kullanici_id' AND ŞİFRESÜTUNU = '$coded_old_pass'");
    Bu arada if($new_pass==$new_pass2) bunuda kullan unutma.

    Kendi veritabanına göre düzenleyeceğin alanlar;
    TABLOADI
    ŞİFRESÜTUNU
    KULLANICI_ID_SÜTUNU
  • 27-12-2012, 09:27:19
    #3
    teşekkür ederim cevap için. ifsorgusu kullanmadım çünkü formda javascript ile kontrol ediyorum ikisi aynı mı diye.