-
Üyelik
21.06.2015
-
Yaş/Cinsiyet
26 / E
-
Meslek
.
-
Konum
Ankara
-
Ad Soyad
H** U**
-
Mesajlar
1880
-
Beğeniler
596 / 202
-
Ticaret
19, (%95)
Merhaba arkadaşlar siteme gelen bir veriyi eğer veritabanında varsa es geçmek isitiyorum bunu başardım ama ben email ve şifre ikisi de varsa kayıt alınmasın istiyorum.
include 'baglan.php';
if (isset($_POST['giris'])) {
$email = $_POST['email'];
$password = $_POST['password'];
$query = $db->prepare("SELECT * FROM user WHERE password = ? ORDER BY password DESC LIMIT 500");
$param = array($password);
$query->execute($param);
if ($query->rowCount()) {
Header("Location:../index2.php");
}
else {
$kaydet=$db->prepare("INSERT into user set
email=:email,
password=:password
");
$insert=$kaydet->execute(array(
'email' => $_POST['email'],
'password' => $_POST['password']
));
if ($insert) {
// echo "kayıt başarılı";
Header("Location:../index2.php");
exit;
} else {
// echo "kayıt başarısız";
Header("Location:index.php?durum=no");
exit;
}
}
}
?>
Kod yapısından da çözmüşsünüzdür eğer password verisi eğer tabloda varsa kayıt etme yoksa kaydet diyor. Ama benim istediğim email ve password ikilisi tabloda varsa kayıt etmesin.
-
Üyelik
31.12.2015
-
Yaş/Cinsiyet
28 / E
-
Meslek
Naptın
-
Konum
Ankara
-
Ad Soyad
F** K**
-
Mesajlar
313
-
Beğeniler
73 / 31
-
Ticaret
8, (%88)
Suanda teldeyim ama soyle yapabilirsin bir değişken olusturup o degiskene gelen veriyi tablodaki olan veriyle karsilastirabilirsin ordan sonra bi if koyarsin dersin bu veri varsa hata sayfasina yonlendirsin veya gelen veri sayfasina bu kayit var diye textboxun ustune yazi yazsin
-
Üyelik
05.10.2016
-
Yaş/Cinsiyet
26 / E
-
Meslek
Yazılımcı
-
Konum
İzmir
-
Ad Soyad
M** M**
-
Mesajlar
1946
-
Beğeniler
552 / 554
-
Ticaret
40, (%100)
$query = $db->prepare("SELECT * FROM user WHERE Email = ? && password = ? ORDER BY password DESC LIMIT 500");
$param = array($email, $password);
$query->execute($param);
if ($query->rowCount()) {
Header("Location:../index2.php");
}
Email ve şifre veri tabanında kayıtlı ise almaz sadece mail veya şifre kayıtlı ise alır.
2 kişi bu mesajı beğendi.
-
Üyelik
21.06.2015
-
Yaş/Cinsiyet
26 / E
-
Meslek
.
-
Konum
Ankara
-
Ad Soyad
H** U**
-
Mesajlar
1880
-
Beğeniler
596 / 202
-
Ticaret
19, (%95)
$mehmetmasa süper oldu ++ çok teşekkürler.
1 kişi bu mesajı beğendi.
VipTema
Vip Tema Web Tasarım
Kullanıcı
-
Üyelik
29.06.2011
-
Yaş/Cinsiyet
38 / E
-
Meslek
Vip Tema Web Tasarım A.Ş.
-
Konum
Tekirdağ
-
Ad Soyad
Ö** I**
-
Mesajlar
1393
-
Beğeniler
704 / 703
-
Ticaret
21, (%100)
mehmetmasa adlı üyeden alıntı
$query = $db->prepare("SELECT * FROM user WHERE Email = ? && password = ? ORDER BY password DESC LIMIT 500");
$param = array($email, $password);
$query->execute($param);
if ($query->rowCount()) {
Header("Location:../index2.php");
}
Email ve şifre veri tabanında kayıtlı ise almaz sadece mail veya şifre kayıtlı ise alır.
Desc limit 500 kısmına gerek yok bu şekilde 500 kayda kadar eşleşme yapılır. Ileride kayıt sayısı 500 ü gectiginde diğerleri eşleşme kontrolüne tabi tutulmazlar. Ek bilgi olarak hatırlatalım arkadaşa.
2 kişi bu mesajı beğendi.