Ben CodeIgniter PHP çerçeve kullanıyorum. Ben dinamik olarak bir PHP sayfasını yüklemek için JS kullanın:
$('someIFrame').writeAttribute(
'src',
'/index.php/controller/method/' +
escape(userGeneratedString)
);
Ben bu koştu, CodeIgniter bana bu hatayı verdi:
http://192.168.0.81/index.php/controller/method/dude%27s%20face
An Error Was Encountered
The URI you submitted has disallowed characters.
Söz konusu URL herhangi bir izin verilmeyen karakterleri içermiyordu çünkü bu tamamen doğru değildir. Benim config dosyası bu URL tüm karakterler mevcut sağlar:
$config['permitted_uri_chars'] = 'a-z 0-9~%.:_()@\-';
Hatayı önlemek için tüm karakterleri Yani var sinirli ve sadece izin verdi.
// Leave blank to allow all characters -- but only if you are insane.
// DO NOT CHANGE THIS UNLESS YOU FULLY UNDERSTAND THE REPERCUSSIONS!!
//$config['permitted_uri_chars'] = 'a-z 0-9~%.:_()@\-';
$config['permitted_uri_chars'] = '';
Bu hat üzerindeki uyarı mesajı korkutucu geliyor. Muhtemelen tüm karakterleri tanıyarak ne yanlış gidebilir? Ben kesmek alacak?