• 21-04-2010, 10:27:40
    #1
    php ile mysql'a 3 adet texboxdan slm adlı veritabanında bulunan tablo1 tablo2 tablo 3 adlı tablolara kayıt eklemeye çalışıyorum
    fakat her kayıtta 1. tabloya giden veriler doğru fakat 2 ve 3. tablolara gidenlerde 0 yazıyor kodu aşağıda verdim yanlış yaptığım uyguladığım ne var yardıcı olursanız sevinirim şididen teşekkürler

    $isim1	=	$_POST ['tablo1_isim'];
    $tarih1	=	$_POST ['tablo1_tarih'];
    $isim2	=	$_POST ['tablo2_isim'];
    $isim3	=	$_POST ['tablo3_isim'];
    
    $kaydet = mysql_query("insert into tablo1 (id, isim, tarih) values (NULL, '$isim1', '$tarih1')") or die("Hata: kayıt işlemi gerçekleşemedi.1. texbox"); 
    
    $kaydet2 = mysql_query("insert into tablo2 (id, isim) values (NULL,'$isim2')") or die ("kayıt işlemi gerçekleşmedi 2. texbox");
    
    $kaydet3=mysql_query("insert into tablo3(id,tablo1_id,isim) values (NULL,NULL,$isim3)") or die ("kayıt işlemi gerçekleşmedi 3. texbox");
  • 21-04-2010, 10:31:48
    #2
    2. ve 3. kayıtlar için POST ile verinin geldiğine emin misiniz?

    print_r($_POST);
    ile hangi verilerin geldiğini görebilirsiniz.
  • 21-04-2010, 10:39:09
    #3
    OfisSoft adlı üyeden alıntı: mesajı görüntüle
    2. ve 3. kayıtlar için POST ile verinin geldiğine emin misiniz?

    print_r($_POST);
    ile hangi verilerin geldiğini görebilirsiniz.
    Array ( [tablo1_isim] => [tablo1_tarih] => [tablo2_isim] => orhan [tablo3_isim] => )
    bu çıkıyor
  • 21-04-2010, 10:51:14
    #4
    Üyeliği durduruldu
    $kaydet = mysql_query("insert into tablo1 (id, isim, tarih) values (NULL, '".$isim1."', '".$tarih1."')") or die("Hata: kayıt işlemi gerçekleşemedi.1. texbox");

    $kaydet2 = mysql_query("insert into tablo2 (id, isim) values (NULL,'".$isim2."')") or die ("kayıt işlemi gerçekleşmedi 2. texbox"
    );

    $kaydet3=mysql_query("insert into tablo3(id,tablo1_id,isim) values (NULL,NULL,'".$isim3."')") or die ("kayıt işlemi gerçekleşmedi 3. texbox"
    );
    bide bunu denermisin
  • 21-04-2010, 11:05:32
    #5
    erhangl adlı üyeden alıntı: mesajı görüntüle
    $kaydet = mysql_query("insert into tablo1 (id, isim, tarih) values (NULL, '".$isim1."', '".$tarih1."')") or die("Hata: kayıt işlemi gerçekleşemedi.1. texbox");

    $kaydet2 = mysql_query("insert into tablo2 (id, isim) values (NULL,'".$isim2."')") or die ("kayıt işlemi gerçekleşmedi 2. texbox"
    );

    $kaydet3=mysql_query("insert into tablo3(id,tablo1_id,isim) values (NULL,NULL,'".$isim3."')") or die ("kayıt işlemi gerçekleşmedi 3. texbox"
    );
    bide bunu denermisin
    veritabınını kontrol ettiğimde yine 2 ve 3 nolu tablolardaki 0 olarak girilmiş
  • 21-04-2010, 11:06:04
    #6
    Üyeliği durduruldu
    tablona bakabilir miyim
  • 21-04-2010, 11:20:02
    #7
    Kimlik doğrulama veya yönetimden onay bekliyor.
    orhanbyr adlı üyeden alıntı: mesajı görüntüle
    Array ( [tablo1_isim] => [tablo1_tarih] => [tablo2_isim] => orhan [tablo3_isim] => )
    bu çıkıyor
    Arkadaşım, değişkenler boş geliyor işte farketmedin mi. Sadece

    [tablo2_isim] => orhan

    var diğerleri yok. Formunu kontrol et, input alanları doğru mu diye.
  • 21-04-2010, 11:32:01
    #8
    erhangl adlı üyeden alıntı: mesajı görüntüle
    $kaydet = mysql_query("insert into tablo1 (id, isim, tarih) values (NULL, '".$isim1."', '".$tarih1."')") or die("Hata: kayıt işlemi gerçekleşemedi.1. texbox");

    $kaydet2 = mysql_query("insert into tablo2 (id, isim) values (NULL,'".$isim2."')") or die ("kayıt işlemi gerçekleşmedi 2. texbox"
    );

    $kaydet3=mysql_query("insert into tablo3(id,tablo1_id,isim) values (NULL,NULL,'".$isim3."')") or die ("kayıt işlemi gerçekleşmedi 3. texbox"
    );
    bide bunu denermisin
    tekrar kontrol edince oldu emeği geçenlere teşekkürler yalnız tek sorun var oda 3 nolu kayıt "kayıt işlemi gerçekleşmedi" diye hata veriyor 2. NULL u silince vermiyor bunu nasıl düzeltebilirim
  • 21-04-2010, 14:27:09
    #9
    Bu işlemin yazılım tarafında değil db tarafında çözülmesi daha doğru olur.

    MySQL kullanıyorsunuz sanırım, Trigger konusuna bir göz atarsanız tek bir insert ile 3/5 ne kadar tabloya data insert etmek istiyorsanız bu işlemin otomatik yapılmasını sağlayabilirsiniz.

    Referanslar;

    * http://dev.mysql.com/doc/refman/5.1/en/triggers.html (EN - TXT)
    * http://www.bilisimdergi.com/MySQL-il...urma-9-10.html (TR - TXT)
    * http://www.mysqlsupport.net/mysql-tr...eolu-ders.html (TR - MOV)
    * http://www.sistembilgisi.com/webmast...tikleyici.html (TR- TXT)
    * http://www.databasedesign-resource.c...-triggers.html (EN - TXT)
    * http://www.mysqltutorial.org/create-...-in-mysql.aspx (EN - TXT)

    Takıldığınız nokta olursa buradan bende yardımcı olabilirim.

    DB tarafında ne kadar çok programlama yaparsanız uygulamanızı o kadar hızlı çalışmasını sağlayabilirsiniz. Unutmayınız ki SQL tarafı için yazdığınız her PHP kodu interpreter tarafından yorumlanmakta ve bu da CPU'ya ek yük bindirmektedir.

    İyi çalışmalar.