• 04-08-2010, 14:26:29
    #1
    <?php
    @session_start();
    include("ayar.php");
    $post_mesaj=htmlspecialchars($_POST['zmesaj']);
    @$post_kullanici=$_SESSION['kullanici_adi'];
    
    $mesajgir=mysql_query("insert into mesajlar(zmesaj,zname)values('$post_mesaj','$post_kullanici')");echo mysql_error();
    hocam boyle kullandım ama '<&%'> girdigim zaman texte
    bana gene
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '%&','gkaradagan')' at line 1Mesaj Gonderilemedi Hata OlustuAnaSayfa
    hata kodunu veriyor acaba nasıl bir yanlıs yapıyorum
  • 04-08-2010, 14:28:33
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    htmlspecialchars'a ENT_QUOTES parametresi ekleyin. Veya addslashes kullanın.
  • 04-08-2010, 14:51:23
    #3
    hocam tesekkur ederım alttaki gibi duzelttım
    Alıntı
    $post_mesaj=htmlspecialchars($_POST['zmesaj'], ENT_QUOTES);
    ama ben <'%&> yazdıgım zman gene hata veriyor dediginiz gibi addslashesda kullandım :S
  • 04-08-2010, 15:43:00
    #4
    Üyeliği durduruldu
    magic quotas in durumuna gore mysql_real_escape_string yapiyor musunuz?
  • 04-08-2010, 16:07:47
    #5
    sdemirkeser adlı üyeden alıntı: mesajı görüntüle
    magic quotas in durumuna gore mysql_real_escape_string yapiyor musunuz?
    $post_mesaj=mysql_real_escape_string(htmlspecialch ars($_POST['zmesaj'], ENT_QUOTES));
    teşekkur ederim boyle yapınca oldu pekı birşey sorabilirmiyim acaba bu kod tam manasıyla ne işe yarıyor
  • 04-08-2010, 19:53:35
    #6
    Veritabanına kaydedilecek verileri temizleyip saldırıdan koruyor.