• 13-04-2014, 15:17:46
    #1
    Merhaba,
    Veri tabanına veri gönderirken mysql_real_escape_string kullanıyorum ama veri tabanına veri eklendiğinde girilen her tırnak işaretlerinin önüne eğik çizgi ekleniyor neden acaba? örneğin veri tabanına Türkiye'nin olarak kayıt edilmesi gerekirken veri Türkiye\'nin olarak kaydediliyor.
  • 13-04-2014, 15:35:31
    #3
    stripslashes($string) olarak sayfaya bastırırsanız bir sorun olmaz. Güvenlik amacıyla tırnakları işlevsiz html kod haline dönüştürüyor.
  • 13-04-2014, 15:41:49
    #4
    PsdBul adlı üyeden alıntı: mesajı görüntüle
    stripslashes($string) olarak sayfaya bastırırsanız bir sorun olmaz. Güvenlik amacıyla tırnakları işlevsiz html kod haline dönüştürüyor.
    Teşekkürler fakat normalde veri tabanına Türkiye'nin olarak yazılmaması normal mi orasını merak ediyorum aslında ben.
  • 13-04-2014, 15:42:39
    #5
    KurnazayRap adlı üyeden alıntı: mesajı görüntüle
    Teşekkürler fakat normalde veri tabanına Türkiye'nin olarak yazılmaması normal mi orasını merak ediyorum aslında ben.
    ' sql sorgusunda hata çıkartabilir bu yüzden o şekilde yazılıyor normal bi durum yani.
  • 13-04-2014, 15:43:28
    #6
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Degil aslinda
    Post ile gelen veriyi strip ederek almalisin.
    Bu soruna escape komutu neden olmaz sunucudaki magic quotes sebep olur
  • 13-04-2014, 15:49:31
    #7
    PsdBul adlı üyeden alıntı: mesajı görüntüle
    ' sql sorgusunda hata çıkartabilir bu yüzden o şekilde yazılıyor normal bi durum yani.
    Diğer hosting hizmeti aldığım firmalarda bu durum yok aynı kodları kullanıyorum kafam karıştı açıkcası.

    Suerte adlı üyeden alıntı: mesajı görüntüle
    Degil aslinda
    Post ile gelen veriyi strip ederek almalisin.
    Bu soruna escape komutu neden olmaz sunucudaki magic quotes sebep olur
    Aradığım cevap buydu teşekkürler peki magic_quotes açıksa mysql_real_escape_string kullanmama gerek var mı? bu konuda yardımcı olursanız sevinirim.
  • 13-04-2014, 15:53:33
    #8
    normalde query şu şekilde:mysql_query("select * from tablo_adi where alan_adi='ali'nin bohçası' ");


    \ olmazsa string alan adını kısıtlamış oluyorsun. yani ali'nin bohçası kısmını kaydetmek isterken sadece aliyi kaydetmek isteyecek fakat diğer kalan harfler query yapısını bozduğu için syntax hatası verecektir. dolayısı ile queryin çalışmayacak.

    mysql_real_escape_string fonksiyonu ile gelen içerikdeki tırnakları querye uygun hale getir diyorsun. db de de tırnaklı halini görürsün. çekerken de yukarıda arkadaşın dediği gibi stripslashes kullanmalısın.
  • 13-04-2014, 16:03:51
    #9
    Risus adlı üyeden alıntı: mesajı görüntüle
    normalde query şu şekilde:mysql_query("select * from tablo_adi where alan_adi='ali'nin bohçası' ");


    \ olmazsa string alan adını kısıtlamış oluyorsun. yani ali'nin bohçası kısmını kaydetmek isterken sadece aliyi kaydetmek isteyecek fakat diğer kalan harfler query yapısını bozduğu için syntax hatası verecektir. dolayısı ile queryin çalışmayacak.

    mysql_real_escape_string fonksiyonu ile gelen içerikdeki tırnakları querye uygun hale getir diyorsun. db de de tırnaklı halini görürsün. çekerken de yukarıda arkadaşın dediği gibi stripslashes kullanmalısın.
    Çok teşekkürler, magic_quotes ne işe yarıyor onuda yazarsanız sevinirim olmadı araştırırım sorun değil.