• 18-10-2009, 00:47:26
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba arkadaşlar bir üye giriş bölümünde kullanıcı giriş yaptığı zaman iki tane session kullanarak oturum açtırıyorum. Bir tanesi üye adı diğeride üyenin id si. ancak üye adı normal olarak atanırken üyelerin id numaraları sürekli 4 olarak atanıyor. Kodları aşağıda yazdım nerede sorun var acaba yardımcı olursanız sevinirim..
    giris.php
    <?php 
    session_start(); ob_start();
    include("db.php");
    
    $uyeadi	= $_POST["uyeadi"];
    $sifre	= $_POST["sifre"];
    $sifre1	= md5($sifre);
    
    $sor	=	mysql_query("Select * From uyeler Where uyeadi='".mysql_real_escape_string($uyeadi)."' and sifre='".mysql_real_escape_string($sifre1)."'");
    if(mysql_num_rows($sor)>0){
    	while($yaz = mysql_fetch_array($sor)){
    	$id = $yaz["id"];
    	
    		$_SESSION["uyeadi"] = $uyeadi;
    		$_SESSION["id"] = $id;
    		}
    	header("Location:index.php");
    	
    }else{
    	header("Location: girisyanlis.php");
    }
    
    ?>
  • 18-10-2009, 01:00:35
    #2
    eğer aynı kullanıcı adında sadece bir kişi kabul ediyorsan kodda mantık hatası var zaten.

    1.si;
    if(mysql_num_rows($sor)>0)
    bunu
    if(mysql_num_rows($sor) == 1)
    olarak kontrol ettirt bence..

    2.si,
    sorgulattığın kullanıcı adı ve şifreye sahip tek kişi varsa zaten sorgudan tek satır sonuç dönecek, bu durumda while döngüsüne gerek yok,
    direk $veri = mysql_fetch_assoc($sorgu);
    şeklinde veriyi alabilirsin.

    Bu hataları bi düzelt bakalım belki değişir sonuç..