Ben güvenle DOM kullanıcı girilen metni görüntülemek için gerekiyor ve ben şu anda (bunun kabul edilir ne karakter sınırlar) yapmak için aşağıdaki JS kullanıyorum.
Ama, şimdi ben tüm karakterler izin istiyorum. Nasıl tüm karakterleri kabul eder, ancak kullanıcı bir komut dosyası çalıştırmak ya da kötü bir şey yapamaz, böylece onları kodlamak.
function displayUserInput() {
var status = $('#text_input').val();
status = stripName(status);
$.ajax({ type: 'POST', url: "api.php?status="+escape(status), success: function(data){
// success
}});
}
function stripName(name) {
var new_name = new String(name);
new_name = new_name.replace(/[^a-zA-Z0-9:\(\/\)\s\.,!~-]/g, '');
return new_name;
}
PHP tarafında ben veritabanına kullanıcı girilen metni kaydetmeden önce aşağıdaki kodu kullanabilirsiniz:
$status_message = $_REQUEST['status'];
$status_message = preg_replace("/[^a-zA-Z0-9:\(\/\)\s\.,!~-]/", "", $status_message);
$status_message = mysql_real_escape_string($status_message);
Benim geçerli yöntemi giriş cezası sanitizes gibi görünüyor, ama ben tam karakter kümesi kabul etmek istiyorum. : Ayrıca, bazı sorunlar görüyorum, örneğin bir kullanıcı girilen metin bloğu olarak görüntülenir ediliyor
u0627u0644u0644u0647 u0627u0643u0628u0631u0645u0646 u0627u0645u0631u064Au0643u0627
Ben bir şey kodlama / kod çözme işlemi yanlış gitmiş farz ediyorum ...