lostyazilim

Veritabanına Eklenen Üyelik Bilgileri İle Giriş Yapma Sorunu

5 Mesajlar 1.309 Okunma
lstbozum
wmaraci reklam

kalemist kalemist www.Kalemist.com Kullanıcı
  • Üyelik 24.11.2012
  • Yaş/Cinsiyet 26 / E
  • Meslek öğrenci
  • Konum Ankara
  • Ad Soyad ** **
  • Mesajlar 10
  • Beğeniler 11 / 2
  • Ticaret 0, (%0)
Bi sistem yaptım, üye girişi yapınca durum paylaşma imkanı oluyor. İlk başta tek bir kullanıcı adı ve şifreyle giriş yapıyordum ama sonra veritabanına uyeler adında bir tablo oluşturdum. Giriş yapılınca, istenen kullanıcı adı ve şifre yazılıyor ve bu kullanıcı adı ve şifre veritabanına ekleniyor. Bende bunları giriş.php de çekerek veritabanındaki herhangi bi kullanıcı adı ve şifreyle giriş yapılmasını istiyorum. Başta başarılı oluyorum ancak veritabanında 4-5 tane üye olunca hiçbiriyle giriş yapılamıyor.Yazdığım kodlar şu şekilde:
session_start();
include("db.php");

$uyeCek = mysql_query('SELECT * FROM uyeler order by id DESC');
$row = mysql_fetch_array($uyeCek);
@$A_user = $row["username"];
@$A_pass = $row["password"];

@$user = $_POST["user"];
@$pass = $_POST["pass"];

if($A_user == $user && $A_pass == $pass){
$_SESSION["oturum"] = true;
$_SESSION["kullanici_adi"] = $A_user;
echo "Giriş başarılı! Birkaç saniye sonra yönlendirileceksiniz...";
header("Refresh: 2; url=index.php");
}else{
echo 'Lütfen Kullanıcı adı ve Şifreyi doğru girdiğinizden emin olun!';
header("Refresh: 1; url=index.php");
}
?>

Php'de yeniyim. Şimdiden zamanınızı aldığım için özür dilerim. Cevaplarınızı bekliyorum.
 

 

wmaraci
reklam

oguzhaner oguzhaner WM Aracı Kullanıcı
  • Üyelik 13.12.2013
  • Yaş/Cinsiyet 30 / E
  • Meslek Web/Desktop Coder
  • Konum İstanbul Avrupa
  • Ad Soyad O** E**
  • Mesajlar 210
  • Beğeniler 20 / 20
  • Ticaret 3, (%100)
@$user = $_POST["user"];
@$pass = $_POST["pass"];


Post edilen, formdan gelen verileri sorgudan önce yazarak deneyebilir misin?
Ayrıca bende uzman sayılmam fakat, değişkenlerde bir hata çıkacağını zannetmiyorum. Bu yüzden hata bastırma komutunu "@" kullanmana gerek yok. Umarım işe yarar. Ben kendi yaptıklarıma bakarak yazdım hep postu sorgudan önce yazmışım.
kalemist

kişi bu mesajı beğendi.

Hayali Hayali Sms Onayı Gerekli Banlı Kullanıcı
  • Üyelik 03.08.2011
  • Yaş/Cinsiyet - / E
  • Meslek
  • Konum
  • Ad Soyad ** **
  • Mesajlar 293
  • Beğeniler 0 / 6
  • Ticaret 1, (%100)
$logincontrol = mysql_query("SELECT * FROM users WHERE username = '$username' && password = '$password'");

if(mysql_num_rows($logincontrol)) {
//Login aktiviteleri
}

Temel mantık bu şekilde. Kodları fazla incelemedim, kendine göre düzenle bakalım.
kalemist

kişi bu mesajı beğendi.

adige adige jinepsmedia.com Kullanıcı
  • Üyelik 11.03.2014
  • Yaş/Cinsiyet 34 / E
  • Meslek yok
  • Konum İstanbul Avrupa
  • Ad Soyad Y** S**
  • Mesajlar 150
  • Beğeniler 4 / 29
  • Ticaret 0, (%0)
Evet hayali nin yazdığı şekilde yapman gerek sen sorgu ile sürekli ilk üyeyi çekiyorsun sonra gelen şifreyi denemeye çalışıyorsun.

Post ile gelen verileri mutlaka filtreden geçir.
Post ile gelen şifre normal şifredir, eğer kayıt olurken şifre kriptolanarak kayıt ediliyorsa giriş yapamazsın.Kayıt olma kodlarına bak, eğer bir kriptolama varsa md5 gibi post ile aldıktan sonra sende kriptola sonra sorgu ile kullanıcıyı ara.
kalemist

kişi bu mesajı beğendi.

wmaraci
wmaraci

kalemist kalemist www.Kalemist.com Kullanıcı
  • Üyelik 24.11.2012
  • Yaş/Cinsiyet 26 / E
  • Meslek öğrenci
  • Konum Ankara
  • Ad Soyad ** **
  • Mesajlar 10
  • Beğeniler 11 / 2
  • Ticaret 0, (%0)
Teşekkürler arkadaşlar. Kodları şu şekilde düzenleyince oldu:


session_start();
include("db.php");

@$user = $_POST["user"];
@$pass = $_POST["pass"];

$veriler = mysql_query("SELECT * FROM uyeler ORDER BY ID DESC");
$row = mysql_fetch_array($veriler);
$kullanici = $row["username"];
$sifre = $row["password"];
$bilgi = mysql_query('SELECT * FROM uyeler WHERE username="'.$user.'" and password="'.$pass.'"');

if(mysql_num_rows($bilgi)>0){
$_SESSION["oturum"] = true;
$_SESSION["kullanici_adi"] = $user;
echo "Giriş başarılı! Birkaç saniye sonra yönlendirileceksiniz...";
header("Refresh: 2; url=index.php");
}else{
echo 'Lütfen Kullanıcı adı ve Şifreyi doğru girdiğinizden emin olun!';
header("Refresh: 1; url=index.php");
}

?>
 

 

wmaraci
Konuyu toplam 2 kişi okuyor. (0 kullanıcı ve 2 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al