Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

PHP'de textarea özel karakter engellemek

Merhaba. Ben textarea bölümümde kod eklenmesini engellemek için. ',",?,},= ... Bunun gibi karakterleri engellemek istiyorum fakat türkçe karakterler kullanabilsin. Türkçe karakterleri engellemesin.
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Doğru Cevap

  • siyahbeyaz adlı üyenin fotoğrafı
    12 yıl önce yazılmış
    472 cevap - 20 soru
    function temizle($deger) {
    $deger = str_replace('{','',$deger);
    $deger = str_replace('?','',$deger);
    $deger = str_replace("'",'',$deger);
    $deger = str_replace('"','',$deger);
    $deger = str_replace('=','',$deger);
    }
    


    kod kullanımı
    $degisken = temizle($_POST[gelen_textarea_degeri]);
    echo $degisken
    
    • siyahbeyaz adlı üyenin fotoğrafı siyahbeyaz
      tüm genel karekterleri silip sadece harf ve sayılardan olusmasını ıstıyorsan

      function temizle($s) {
      	$s = preg_replace('/&.+?;/', '', $s);
      	$s = preg_replace('/[^%a-z0-9 _-]/', '', $s);
      	$s = preg_replace('/\s+/', '', $s);
      	$s = preg_replace('|-+|', '', $s);
      	return $s;
      }
      
      bunu kullanabılırsın.
      12 yıl önce yazılmış
    • muratmoon adlı üyenin fotoğrafı muratmoon
      İlerde bu sorunu yaşayan kişiler için doğru cevap olarak işaretlenen cevabın güvenlik sağlamayacağını not almak istedim.

      Kaçış yapılması gereken tüm karakterlerin bunlarla sınırlı değil, ayrıca veriyi kullanacağınız yere göre (veritabanı, html, js, xml) kaçış yapılması gereken karakterle de değişeceği için güvenlik problemi yaşamanız muhtemel.

      Son olarak kaçış işlemlerini kullandığınız karakter setine göre yapmazsanız yine güvenlik problemi oluşabilir.
      12 yıl önce yazılmış

Cevaplar

  • muratmoon adlı üyenin fotoğrafı
    12 yıl önce yazılmış
    38 cevap - 1 soru
    Sorunuza cevap olmayacak çünkü izlediğiniz yöntem bana göre yanlış, şunları deneyebilirsiniz.

    1) Gönderileni olduğu gibi alır, gösterirken htmlspecialchars fonksiyonundan geçirirsiniz. Böylece içinde kod olsa bile güvenlik sorunu olmaz.

    2) Gönderim sonrası strip_tags fonksiyonu ile gönderilen veriden html kodlarını silersiniz.