Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

Insert Into Tırnak Problemi.

Konu, 'PHP' kısmında tynsharp tarafından paylaşıldı.

  1. tynsharp

    tynsharp Üye

    Kayıt:
    22 Nisan 2012
    Mesajlar:
    55
    Beğenilen Mesajlar:
    0
    Merhaba, bir tırnak işareti sorunu ile mücade etmekteyim. Insert Into sorgusu yaparken alanlar kısmında eğik tırnak kullanmadığım sürece kod çalışmıyor. Veritabanına ekleme yapılmıyor. Bu konuda yardımcı olabilir misiniz. Her zaman çalışan kodlar, normal şekilde yazmama rağmen çalışmamakta.

    Çalışan Hali;
    PHP:
    $add=mysql_query("INSERT INTO images (`desc` ,`name` ,`category` ) VALUES ('$desc','$name','$category')");
    Çalışması gereken, ama çalışmayan hali;
    PHP:
    $add=mysql_query("INSERT INTO images (desc ,name ,category ) VALUES ('$desc','$name','$category')");

    Bugüne kadar her zaman kullandığım alttaki kod, şuan çalışmamakta. Tüm işlemleri sıfırdan yapmış olmama rağmen çalıştıramıyorum. Mutlaka eğik tırnak işaretini eklemem gerekiyor, ek olarak bu eğik tırnakların bildiğiniz bir klavye kısayol tuşu var mı :)

    Teşekkürler.
     
  2. Slothere

    Slothere Daimi Üye

    Kayıt:
    24 Nisan 2010
    Mesajlar:
    813
    Beğenilen Mesajlar:
    0
    alt gr + virgül

    `
     
  3. tynsharp

    tynsharp Üye

    Kayıt:
    22 Nisan 2012
    Mesajlar:
    55
    Beğenilen Mesajlar:
    0
    Peki neden bu tırnaklar olmadan çalışmadığı ile ilgili bilgisi olan var mı ?
     
  4. SametCilli

    SametCilli Üye

    Kayıt:
    12 Aralık 2006
    Mesajlar:
    234
    Beğenilen Mesajlar:
    0
    Meslek:
    Yazılım Uzmanı
    Şehir:
    İstanbul
    desc sql komutudur, ` koymazsan bunu senin alanın olarak değil bir kod olarak görmeye çalışacak ve syntax hatası verecektir.
    desc yerine başka bir alan ismi kullanırsan sorun çıkarmaz,

    büyük ihtimalle name de sql de ayrılmış isim olabilir.
     
  5. Ferhat Ozdemir

    Ferhat Ozdemir Daimi Üye

    Kayıt:
    14 Nisan 2006
    Mesajlar:
    3,268
    Beğenilen Mesajlar:
    3
    Meslek:
    Electronics and Computer Engineer
    Şehir:
    Texas
    PHP:
    $add=mysql_query("INSERT INTO images (desc ,name ,category ) VALUES ('$desc','$name','$category')");  
    Bu kodun çalışmayıp, tırnak işaretini zorunlu kılması çok normaldir.
    Sebep:
    sutun adlarinda kullandigin desc ve name mysql komut listesinde tanımlanmış komutlardır. O yüzden komut olarak algılandığından yazim hatasi verir.
    Bu sana ileride cok büyük sıkıntılar yaşatabilir. O yüzden sana önerim; desc=>siralama, name=>isim gibi yeni tanimlari ile değiştirmen sorunu kalıcı olarak çözecektir.

    Kolay gelsin.

    Düzeltme: @SametCilli arkadaşim ben cevap yazana kadar sen cevabi vermişsin. :)
     
  6. SametCilli

    SametCilli Üye

    Kayıt:
    12 Aralık 2006
    Mesajlar:
    234
    Beğenilen Mesajlar:
    0
    Meslek:
    Yazılım Uzmanı
    Şehir:
    İstanbul
    :) benim daha çok boş vaktim varmış,

    +

    sen yine de adı her neyse (`) bu işareti alan isimlerinde, tablo isimlerinde kullan ki yarın öbürgün sql in ayrılmış ifadesi olacağını tahmin edemediğin bir alan tablo ismi kullanırsın. sonra sorunun bu olduğu aklının ucundan bile geçmez uğraşırsın durursun.