Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

PHP'de iki aynı veriyi tekrar girememek

Merhaba,
Bir register form'um var. Bu formda veritabanına gönderme yapıyor. Bu göndermede ikinci kez aynısı çıkarsa hata verip gönderi yapmamasını istiyorum. Ayrıca diğer verileride göndermemesini istiyorum. Sadece 1 tane değişkeni sorgulayacak aynısı varsa girdiyi eklemicek. Ama diğer girdileride engellicek...
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Doğru Cevap

  • tapsin adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    147 cevap - 0 soru
    Hangi field alanındaki verinin aynısı olmaması gerekiyorsa o field alanını uniq yapman gerekiyor
    • tapsin adlı üyenin fotoğrafı tapsin
      Eğer veri tabanından bu işlemi yapmak istemiyor isen o zaman formu gönderdiğin sayfanın en başında SQL den sorgu çekerek if ve else komutları ile karşılaştırmalar yapman gerekiyor.
      10 yıl önce yazılmış
    • spywaredz adlı üyenin fotoğrafı spywaredz
      if else şeklinde nasıl yapabilirim? tam olarak ne yazıcam?
      10 yıl önce yazılmış
    • tapsin adlı üyenin fotoğrafı tapsin
      Örnek olarak şu şekilde

      Şimdi veri tabanında kullanıcı adı şifre olsun sadece tablomuzda kullanicilar olsun.

      <form action="kayit.php" method="post" >
      <input name="user" value="kullanici adi">
      <input name="password" value="sifre">
      </form>

      Fazla vaktim olmadığı için hızlıca anlatacağım mantığı kavraman için yazıyorum..

      kayit.php

      <?php

      \* postdan gelen değerleri yeni sayfamızda değişkene atıyoruz.*/

      $kullanici=$_POST['user'];
      $Sifre=$_POST['password'];

      \*SQL bağlantısı için genelde sınıf kendi yazdığım sınıfları kullanırım şimdilik fonksiyon olarak.*/

      function dbconnect()
      {
      $db['host'] = 'localhost';
      $db['user'] = 'user';
      $db['pass'] = 'pass';
      $db['name'] = 'database';

      $connection = @mysql_connect($db['host'], $db['user'], $db['pass'])
      or die ("Database Sunucusu ile bağlantı kurulamadı, Daha Sonra Tekrar Deneyiniz.");
      $db = @mysql_select_db($db['name'], $connection)
      or die ("Database erişim Hatası, Daha Sonra Tekrar Deneyiniz.");
      mysql_query("SET NAMES 'utf8'");
      }

      dbconnect();

      $sor=mysql_query("select * from kullanicilar");
      $d=mysql_fetch_array($sor);

      if(!$kullanici){
      echo "Kullanıcı adı boş olamaz.";
      }elseif($kullanici ==$d['kullaniciadi'] ){
      echo "Kullanıcı adı daha önce kullanılmış";
      }

      Gibi burada if ile sıra ile ne olsun ne olmasın şeklinde devam edebilirsin.
      10 yıl önce yazılmış
    • spywaredz adlı üyenin fotoğrafı spywaredz
      Çok saol uğraştırmışım seni çok
      elseif($kullanici ==$d['kullaniciadi'] ){
      echo "Kullanıcı adı daha önce kullanılmış";
      }
      Bunu yazman yeterliydi. Yoksa biliyorum yani php'yide oluyor böyle bilmediklerim... Takıldıklarım... + Puan
      10 yıl önce yazılmış
    • tapsin adlı üyenin fotoğrafı tapsin
      17
      if( empty($adsoyad) || empty($yas) || empty($facebook) ) {
      18
      echo "Form alanını eksik doldurdunuz.";
      19
      echo "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"3;URL=register2.php\">";
      20
      exit();
      21
      }
      burada zaten tüm alanları boş bırakılmaması için şart koşulmuş.
      10 yıl önce yazılmış
    • spywaredz adlı üyenin fotoğrafı spywaredz
      biliyorumda diğer kod içinde olmadığı için biraz şüphelendim. Teşekkürler...
      10 yıl önce yazılmış

Cevaplar

Hiç cevap bulunamadı.