Merhaba, Ziyaretçi. Lütfen giriş yapın veya üye olun.
Aktivasyon mailiniz gelmediyse buraya tıklayın.
04, 2008, 11:20:48 pm
42710 Mesaj 9329 Konu Gönderen: 17902 Üye
Son üye: Remark
Turk-Php.Com Forum  |  Yardım Forumları  |  Veritabanı Yardım Forumu  |  k.adi-pass kontrolü yapamıyorum « önceki sonraki »
Sayfa: [1] Yazdır
Yazan Konu: k.adi-pass kontrolü yapamıyorum  (Okunma Sayısı 920 defa)
airwebb
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 82


Üyelik Bilgileri
k.adi-pass kontrolü yapamıyorum
« : 22, 2006, 05:09:41 am »

veritabanımda uyelik die bir tablom var ve bu tabloda da 3 alan var.
id,kadi,pass diye.
ben bu alanlarada 3 kayit ekledim phpmyadminden
murat , 12345
ahmet, 12345
hasan, 12345  diye.
ben bu kadi ve parolaya sahip kişilerin sadece giriş yapmasını istiyorum.

veritabanında karşılaştırma içinde şöyle bir kod yazdım
Kod:
<?php
mysql_connect
("localhost","root","") or die("servere baglanamadi");
mysql_select_db("deneme");
$sql="SELECT * FROM uyelik";
$kadi=$_REQUEST['kadi'];
$pass=$_REQUEST['pass'];
$k=mysql_query($sql);
while(
$var=mysql_fetch_array($k))
{
if ((
$var['kadi']==$kadi) && ($var['pass']==$pass))
{
echo 
"girisiniz basarili";

}
else
{
echo 
"giriş başarısız";
}
}
mysql_close();
?>






k.adi=murat
pass=12345 yazdığımda

cıktı şöyle
girisiniz basarili giris basarisiz giris basarisiz //sadece girişiniz başarılı demesi lazım

kadi=hasan
pass=12345 yazdığımda
cıktısı
 giris basarisiz giris basarisiz girisiniz basarili// sadece girşiniz başarılı demesi lazım



bu kontrolü düzgün biçimde yapmam için nasıl bir kod yazmam gerekiyor?
Logged
zombie
Global Moderatör
*
Offline Offline

Mesaj Sayısı: 939



Üyelik Bilgileri
Ynt: k.adi-pass kontrolü yapamıyorum
« Yanıtla #1 : 22, 2006, 05:57:49 am »

şunu denermisin.
Kod:
<?php
mysql_connect
("localhost","root","") or die("servere baglanamadi");
mysql_select_db("deneme");
$sql="SELECT * FROM uyelik";
$kadi=$_REQUEST['kadi'];
$pass=$_REQUEST['pass'];
$k=mysql_query($sql);

$var=mysql_fetch_array($k);


if ((
$var['kadi']==$kadi) && ($var['pass']==$pass))
{
echo 
"girisiniz basarili";

}
else
{
echo 
"giriş başarısız";
}

mysql_close();
?>
Logged

CoDeDaNCeR
Ziyaretçi


E-Posta
Ynt: k.adi-pass kontrolü yapamıyorum
« Yanıtla #2 : 22, 2006, 06:02:18 am »

öncelikle niye o şekilde çıktı aldığını anlatayım.

sen hiçbir koşulla sınırlandırmadığın sql kodunu while döngüsüne alarak tüm satırlar için yazdırıyorsun. sende 3 satır olduğu için 3 sonuç çıkıyor 3000 tane satırın olsaydı 3000 sonuç çıkacaktı Smiley

doğrusu:

Kod:
mysql_connect("localhost","root","") or die("servere baglanamadi");
mysql_select_db("deneme");
$kadi=$_REQUEST['kadi'];
$pass=$_REQUEST['pass'];
$sql="select * from uyelik where kadi='$kadi' and pass='$pass'";
$k=mysql_query($sql);
$varmi=mysql_num_rows($k);
if($varmi !=0){
echo "giriş başarılı";
}else{
echo "giriş başarısız";
}

burada kullandığım fonk. açıklamıyorum. araştırıp öğrenirsen daha yararlı olur.

kolay gelsin...
Logged
airwebb
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 82


Üyelik Bilgileri
Ynt: k.adi-pass kontrolü yapamıyorum
« Yanıtla #3 : 22, 2006, 06:09:54 am »

şunu denermisin.
Kod:
<?php
mysql_connect
("localhost","root","") or die("servere baglanamadi");
mysql_select_db("deneme");
$sql="SELECT * FROM uyelik";
$kadi=$_REQUEST['kadi'];
$pass=$_REQUEST['pass'];
$k=mysql_query($sql);

$var=mysql_fetch_array($k);


if ((
$var['kadi']==$kadi) && ($var['pass']==$pass))
{
echo 
"girisiniz basarili";

}
else
{
echo 
"giriş başarısız";
}

mysql_close();
?>


bu kodda da sadece 1.değer için doğru sonucu verior yanı tablodaki 1.kayıt için doğru sonucu veriyor.
ancak 2.3. kayitlar için doğru bigileri girmeme rağman başarısız giriş diyor
Logged
airwebb
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 82


Üyelik Bilgileri
Ynt: k.adi-pass kontrolü yapamıyorum
« Yanıtla #4 : 22, 2006, 06:12:15 am »

öncelikle niye o şekilde çıktı aldığını anlatayım.

sen hiçbir koşulla sınırlandırmadığın sql kodunu while döngüsüne alarak tüm satırlar için yazdırıyorsun. sende 3 satır olduğu için 3 sonuç çıkıyor 3000 tane satırın olsaydı 3000 sonuç çıkacaktı Smiley

doğrusu:

Kod:
mysql_connect("localhost","root","") or die("servere baglanamadi");
mysql_select_db("deneme");
$kadi=$_REQUEST['kadi'];
$pass=$_REQUEST['pass'];
$sql="select * from uyelik where kadi='$kadi' and pass='$pass'";
$k=mysql_query($sql);
$varmi=mysql_num_rows($k);
if($varmi !=0){
echo "giriş başarılı";
}else{
echo "giriş başarısız";
}

burada kullandığım fonk. açıklamıyorum. araştırıp öğrenirsen daha yararlı olur.

kolay gelsin...

çok saolasın hatamı da anladım.
tşkler
Logged
zombie
Global Moderatör
*
Offline Offline

Mesaj Sayısı: 939



Üyelik Bilgileri
Ynt: k.adi-pass kontrolü yapamıyorum
« Yanıtla #5 : 22, 2006, 06:14:13 am »

Alıntı
bu kodda da sadece 1.değer için doğru sonucu verior yanı tablodaki 1.kayıt için doğru sonucu veriyor.
ancak 2.3. kayitlar için doğru bigileri girmeme rağman başarısız giriş diyor
haklısın sorgu doğru olmayınca  yazdığım kod sadece ilk kayıt için doğru sonuç verir.
Logged

blades
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 125


Üyelik Bilgileri
Ynt: k.adi-pass kontrolü yapamıyorum
« Yanıtla #6 : 22, 2006, 06:49:17 am »

yanlıs gormediysem sifreyi düz olarak 12345 die kaydetmişin eger o sifreyi sen md5 veya hani şifreleme fonksiyonunu kullanıyorsan onla gonderiyorsundur 32bit sifren oluyordur ama sen 12345 die bekliyorsun kodda ole bir sey varsa bakarmısın
Logged

if($askin==$herseyin || $güven==$herkes )
{
echo "Coktan kazigi yemisin haberin yok"; exit(); 
 }
$return=FATAL_ERror;
airwebb
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 82


Üyelik Bilgileri
Ynt: k.adi-pass kontrolü yapamıyorum
« Yanıtla #7 : 22, 2006, 06:56:41 am »

yanlıs gormediysem sifreyi düz olarak 12345 die kaydetmişin eger o sifreyi sen md5 veya hani şifreleme fonksiyonunu kullanıyorsan onla gonderiyorsundur 32bit sifren oluyordur ama sen 12345 die bekliyorsun kodda ole bir sey varsa bakarmısın

evt düz 12345 olarak kontrol etiriyorum ve bunun guvenli birşey olmadığınıda biliyorum
.php - mysql e dun bir proje alarak başladım ufaktan boyle şeyler yazıorum
md5 le nasıl parolayı guvenli bi halde tutarım yukardaki programa ekleyerek Huh
Logged
aziz
PHP Programcısı
****
Offline Offline

Mesaj Sayısı: 939



Üyelik Bilgileri
Ynt: k.adi-pass kontrolü yapamıyorum
« Yanıtla #8 : 22, 2006, 06:05:30 pm »

//gelen pass = $_POST['pass'] olsun
$pass md5($_POST['pass']);
$user $_POST['user'];

//Kayıtta
$query mysql_query("INSERT INTO tablo_adi VALUES('','$user','$pass') ";

//Kontrol ederken

$pass md5($_POST['pass']);
$user $_POST['user'];

$query mysql_query("SELECT * FROM tablo_adi WHERE user='$user' AND pass='$pass' ");

Şeklinde şifreyi 128 bit şifreleyip database e yazmış ve yine aynı şekilde karşılaştırmış olursunuz
Logged

Jabber:
xmpp:aziz@member.turk-php.com
Alihan ÇETİN
www.azizce.com
airwebb
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 82


Üyelik Bilgileri
Ynt: k.adi-pass kontrolü yapamıyorum
« Yanıtla #9 : 23, 2006, 02:21:41 am »

//gelen pass = $_POST['pass'] olsun
$pass md5($_POST['pass']);
$user $_POST['user'];

//Kayıtta
$query mysql_query("INSERT INTO tablo_adi VALUES('','$user','$pass') ";

//Kontrol ederken

$pass md5($_POST['pass']);
$user $_POST['user'];

$query mysql_query("SELECT * FROM tablo_adi WHERE user='$user' AND pass='$pass' ");

Şeklinde şifreyi 128 bit şifreleyip database e yazmış ve yine aynı şekilde karşılaştırmış olursunuz

Ancak şöyle birşey var ben database daha önceden yazıorum şifreleri yani  şifreler ve kadları belli yani 3 kullanıcım var k.adlari hasan,murat,huseyin bunların parolaları 123456,1234,12345 mesela.
ben phpmyadminde pass alanında bu şifrelerin md5 lenmiş halini gormek istiyorum düz şifreleri değil.
bunu yapabilirmiyim?yaparsam nasıl?
Logged
airwebb
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 82


Üyelik Bilgileri
Ynt: k.adi-pass kontrolü yapamıyorum
« Yanıtla #10 : 23, 2006, 05:02:50 am »

aziz arkadaşımın dediği gibi şöyle kayıt ekliyorum
Kod:
<?
@mysql_connect("localhost","root","") or die("servere baglanamadi");
@mysql_select_db("staj") or die("veritabanina baglanamadi");
$kadi=$_POST['kadi'];
$pass=md5($_POST['pass']);
$adiniz=$_POST['adiniz'];
$email=$_POST['email'];
$tel=$_POST['tel'];
$kayit=mysql_query("INSERT INTO `uyelik` (`id`, `kadi`, `pass`, `aktivasyon`, `adiniz`, `email`, `tel`) VALUES ('', '$kadi', '$pass', '0', '$adiniz', '$email', '$tel')");
echo "üyeliğiniz onaylandıktan sonra sisteme giriş yapabileceksiniz";
mysql_close();
?>



aktivasyon alanına default olarak 0 atadım

giriş içinse şöyle bir kod yazdım

Kod:
<?
@mysql_connect("localhost","root","") or die("servere baglanamadi");
@mysql_select_db("staj") or die("database bağlanamadi");
$kadi=$_POST['kadi'];
$pass=md5($_POST['pass']);
$sorgu=mysql_query("SELECT * FROM `uyelik` WHERE kadi='$kadi' AND pass='$pass' AND aktivasyon!=0");
$kontrol=mysql_num_rows($sorgu);
if($kontrol!=0)
echo "sistemdesiniz";
else
echo "k.adı-parolanız yanlış veya üyeliğiniz aktive edilmemiş";
mysql_close();
?>

ancak giriş yapamıyorum
kayitli kullanıcı adı şifre girmeme rağmen k.adı-parolanız yanlış veya uyelik aktive edilmemiş dior??

nerde bi hata yapmış olabilirim acaba?(kayit olanlardan istediğim kişilerin aktivasyonunu hmn 1 yapıorum ki girebilsin)
« Son Düzenleme: 23, 2006, 05:08:54 am Gönderen: airwebb » Logged
aziz
PHP Programcısı
****
Offline Offline

Mesaj Sayısı: 939



Üyelik Bilgileri
Ynt: k.adi-pass kontrolü yapamıyorum
« Yanıtla #11 : 23, 2006, 12:15:23 pm »

passwordu kayıt ettiğiniz sql alanı  VARCHAR(32) mi acaba?
Logged

Jabber:
xmpp:aziz@member.turk-php.com
Alihan ÇETİN
www.azizce.com
airwebb
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 82


Üyelik Bilgileri
Ynt: k.adi-pass kontrolü yapamıyorum
« Yanıtla #12 : 25, 2006, 03:12:14 am »

arkadaşlar okulda çalıştırdığım kodları (içinde mysql kodları olan) evimde çalıştıramıoorum şöyle ki okulda çalışan kayit.php evimde çalışmıyor
wamp 5 1.6.1 de de durum aynı wamp 5 1.6.4 de de
acaba bi ayarla fln mı oynadım da boyle oldu?
Logged
airwebb
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 82


Üyelik Bilgileri
Ynt: k.adi-pass kontrolü yapamıyorum
« Yanıtla #13 : 25, 2006, 05:15:12 am »

arkadaşlar okulda çalıştırdığım kodları (içinde mysql kodları olan) evimde çalıştıramıoorum şöyle ki okulda çalışan kayit.php evimde çalışmıyor
wamp 5 1.6.1 de de durum aynı wamp 5 1.6.4 de de
acaba bi ayarla fln mı oynadım da boyle oldu?


<? bunun yerine
<?php yazınca sorun çözüldü bunu bulmak tam 1 günümü aldı:)
Logged
airwebb
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 82


Üyelik Bilgileri
Ynt: k.adi-pass kontrolü yapamıyorum
« Yanıtla #14 : 25, 2006, 06:16:34 am »

passwordu kayıt ettiğiniz sql alanı  VARCHAR(32) mi acaba?


evet varchr 32 ama hala giriş yapamıyorum k.adı şifre doğru olsa bile??
Logged
Sayfa: [1] Yazdır 
« önceki sonraki »
Gitmek istediğiniz yer:  


Turk-Php.Com Forum | SMF Forum Software © 2005, Simple Machines LLC. All Rights Reserved.