Veritabanına veri gönderme

serdar S. serdar

Merhaba,

Veri tabanına veri göndermek için bir form yaptım, ve aşağıda vereceğim kodlarla verı gönderiyorum. Sorun şu ben gönderilen aynı değerleri kaydedilmesini istemiyorum yada uyarılmasını istiyorum. umarım derdimi anlatabildim

$yazar = $_POST['yazar'];
$eser = $_POST['eser'];

$kaydet = mysql_query("insert into defter (id, yazar, eser) values (NULL, '$yazar', '$eser')");

if($kaydet){
 echo "Gönderildi";
} else{
echo "Gönderilmedi";
}

 

04-09-2010 15:11 Edit:04-09-2010 15:13

    Ne kaydedilmesini istiyorsunuz peki ?

    bunun yeirne ne gelecek mesela :

    $yazar = $_POST['yazar'];

     

    Birde şu satırda kısaltma olabilir. Auto_increment ise :

    $kaydet = mysql_query("insert into defter (yazar, eser) values ('$yazar', '$eser')");

    Her programcı birgün Php yi tadacaktır
    04-09-2010 23:08

      serdar S. serdar

      şöyle diyeyim A adlı yazarın B adlı kitabı kayıtlı ise bu bir daha gönderildiğin de bunun kayıtlı olduğunu bildirsin

      05-09-2010 00:10

        cvp.

        nssasmaz Nursin Şaşmaz Avatar
        $sql=mysql_query("SELECT id FROM `eser` WHERE `yazar`='A' and `eser_adi`='B'");
        if(mysql_num_rows($sql)==0) {
        $kaydet= { sizin sorgunuz ve işlemleriniz .... }
        } else {
        echo 'Eklemek istediğiniz eser daha önceden kayıt edilmiştir.';
        }
        Gitme vakti gelince gitmek mi zordur kalmak mı?
        06-09-2010 12:42

          serdar S. serdar

          Cevap için teşekürler,

          ama hata veriyor Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in xxxxxxxxxx/kayd.php on line 8

          8. sırada ise    if(mysql_num_rows($sql)==0) { var,

          06-09-2010 23:18

            theSinan Sinan AY

            necati kardeşim

            $sql=mysql_query("SELECT id FROM `eser` WHERE `yazar`='A' and `eser_adi`='B'");
            if(mysql_num_rows($sql)==0) {
            $kaydet= { sizin sorgunuz ve işlemleriniz .... }
            } else {
            echo 'Eklemek istediğiniz eser daha önceden kayıt edilmiştir.';
            }

            bu şekilde yazmış

             

            $sql=mysql_query("SELECT id FROM eser WHERE `yazar`='A' and `eser_adi`='B'");
            if(mysql_num_rows($sql)==0) {
            $kaydet= { sizin sorgunuz ve işlemleriniz .... }
            } else {
            echo 'Eklemek istediğiniz eser daha önceden kayıt edilmiştir.';
            }

            yukarda yeşil renkte eser yazan bölümde tek tırnak olmayıp sizin tablonuzun adı olması gerekir

            öyle bir deneyin

             

            07-09-2010 09:55

              serdar S. serdar

              Hatayı göstermiyor ama eski sorgudan da bir farkı yok bunun yani yine tablomdaki degerleri göz önünde buundurmadan gönderilen her şeyi kayd ediyor. Galiba ben sorunumu tam anlatamadım tablom aşağıda

              id    yazar              eser
              1      Ahmet            Kar

              Diyelim ki tablomda Ahmedin Kar  adlı esri kayıtlıdır, eğer bir daha Ahmedin Kar adlı eseri gönderilirse bu veri tabanına kayıt edilmesin.

              07-09-2010 14:45

                theSinan Sinan AY

                $yazar = $_POST['yazar'];
                $eser = $_POST['eser'];

                //gelen bilgileri tabloda sorgulatıyoruz

                $sorgula=mysql_query("select * from defter where yazar='".$yazar."' and eser='".$eser."'");

                //bulunan sutun sayısını değişkene atıyoruz

                $varmi=mysql_num_rows($sorgula);

                /*değişken degeri 0 ise false 0 dan fazla isle true değeri döndürdüğünden değeri kontrol ettiriyoruz */

                if($varmi){

                //değişken degeri 0 dan fazla ise ekrana mesaj yazdırıp sayfayı durduruyoruz

                echo " $yazar 'a ait $eser adlıı eser daha önce sistemde kayıtlı

                kayit islemi yapılmadı lütfen başka bir kayıt girmeyi deneyin";

                exit();

                }


                $kaydet = mysql_query("insert into defter (id, yazar, eser) values (NULL, '$yazar', '$eser')");

                if($kaydet){
                 echo "Gönderildi";
                } else{
                echo "Gönderilmedi";
                }

                08-09-2010 13:29

                  serdar S. serdar

                  Şimdi de gönderilen tüm verilere a ya ait  adlı eser daha önce sistemde kayıtlı dır mesajı veriyor ve veri tabanında boş satırlar oluşturuyor.

                  09-09-2010 16:27

                    theSinan Sinan AY

                    $yazar = $_POST['yazar'];
                    $eser = $_POST['eser'];

                    //gelen bilgileri tabloda sorgulatıyoruz

                    $sorgula=mysql_query("select * from defter where yazar='$yazar' and eser='$eser'");

                    //bulunan sutun sayısını değişkene atıyoruz

                    $varmi=mysql_num_rows($sorgula);

                    /*değişken degeri 0 ise false 0 dan fazla isle true değeri döndürdüğünden değeri kontrol ettiriyoruz */

                    if($varmi){

                    //değişken degeri 0 dan fazla ise ekrana mesaj yazdırıp sayfayı durduruyoruz

                    echo " $yazar 'a ait $eser adlıı eser daha önce sistemde kayıtlı

                    kayit islemi yapılmadı lütfen başka bir kayıt girmeyi deneyin";

                    }
                    else
                    {

                    $kaydet = mysql_query("insert into defter (id, yazar, eser) values (NULL, '$yazar', '$eser')");

                    if($kaydet){
                     echo "Gönderildi";
                    } else{
                    echo "Gönderilmedi";
                    }

                    }

                    sıkıntı devam ederse

                    1 kodu localde mi webte mi deniyorsun

                    2 php versiyonu nedir

                    3 mysql_connect atadığın değişken ismi nedir

                    bunlar foruma yaz yada tablonun sql ni ve kullandığın kodu zipleyip atach et göz atalım

                    11-09-2010 19:17

                      www.Phpkodlari.com © 2009 Herkes Php öğrenecek
                      Web tasarım ve eğitim kaynağınız.