Welcome, Guest. Please login or register.
Did you miss your activation email?
July 09, 2008, 05:56:47 am
42749 Posts in 8091 Topics by 17932 Members
Latest Member: codder
Turk-Php.Com Forum  |  Yardım Forumları  |  Veritabanı Yardım Forumu  |  k.adi-pass kontrolü yapamıyorum « previous next »
Pages: [1] Print
Author Topic: k.adi-pass kontrolü yapamıyorum  (Read 945 times)
airwebb
PHP Öğrencisi
*
Offline Offline

Posts: 82


View Profile
k.adi-pass kontrolü yapamıyorum
« on: June 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
Code:
<?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

Posts: 940



View Profile
Ynt: k.adi-pass kontrolü yapamıyorum
« Reply #1 on: June 22, 2006, 05:57:49 am »

şunu denermisin.
Code:
<?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
Guest


Email
Ynt: k.adi-pass kontrolü yapamıyorum
« Reply #2 on: June 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:

Code:
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

Posts: 82


View Profile
Ynt: k.adi-pass kontrolü yapamıyorum
« Reply #3 on: June 22, 2006, 06:09:54 am »

şunu denermisin.
Code:
<?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

Posts: 82


View Profile
Ynt: k.adi-pass kontrolü yapamıyorum
« Reply #4 on: June 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:

Code:
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

Posts: 940



View Profile
Ynt: k.adi-pass kontrolü yapamıyorum
« Reply #5 on: June 22, 2006, 06:14:13 am »

Quote
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

Posts: 125


View Profile
Ynt: k.adi-pass kontrolü yapamıyorum
« Reply #6 on: June 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

Posts: 82


View Profile
Ynt: k.adi-pass kontrolü yapamıyorum
« Reply #7 on: June 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

Posts: 940



View Profile
Ynt: k.adi-pass kontrolü yapamıyorum
« Reply #8 on: June 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

Posts: 82


View Profile
Ynt: k.adi-pass kontrolü yapamıyorum
« Reply #9 on: June 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

Posts: 82


View Profile
Ynt: k.adi-pass kontrolü yapamıyorum
« Reply #10 on: June 23, 2006, 05:02:50 am »

aziz arkadaşımın dediği gibi şöyle kayıt ekliyorum
Code:
<?
@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

Code:
<?
@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)
« Last Edit: June 23, 2006, 05:08:54 am by airwebb » Logged
aziz
PHP Programcısı
****
Offline Offline

Posts: 940



View Profile
Ynt: k.adi-pass kontrolü yapamıyorum
« Reply #11 on: June 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

Posts: 82


View Profile
Ynt: k.adi-pass kontrolü yapamıyorum
« Reply #12 on: June 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

Posts: 82


View Profile
Ynt: k.adi-pass kontrolü yapamıyorum
« Reply #13 on: June 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

Posts: 82


View Profile
Ynt: k.adi-pass kontrolü yapamıyorum
« Reply #14 on: June 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
Pages: [1] Print 
« previous next »
Jump to: