PHP kötü karakter temizleniyor

2 Cevap php

Müvekkilim bir CMS benim küçük metin editörü içine Word içerik yapıştırarak bir küçük sorun var.

Çift tırnak UTF çeşit gibi göründüğünü kodlanmış geri geliyor.

Herhangi bir fikir ben şerit eğer / değiştirin bu onlar benim MySQL tablo üzerinden görüntülenen olsun zaman PHP kullanarak.

Burada tehlikeli karakterler dışarı tükürür sayfaya link, size baş ağrısı neden olan 'kıyamet siyah elmas' görebilirsiniz.

http://linq.milkbarstudios.com/news_detail.php?id=3

Herhangi bir öneri büyük ölçüde kabul edilecekti!

2 Cevap

Ben aslında çok tehlikeli karakterleri değiştirmek için PHP arıyordu.

sonunda ben o mükemmel giderir, hangi buldum:

$output = preg_replace('/[^(\x20-\x7F)]*/','', $output);

Bu kod bir hata gibi geliyor. Metin verileri ele alırken, her zaman kodlama düşünün ve gerekli ileri ve geri dönüştürmek gerekir. Tarayıcı UTF-8 gönderir zaman (MySQL metin sütunlarında UTF-8 desteklemiyor) veritabanına göndermeden önce Yani, dize çözmelisiniz. Bu şekilde, orijinal metin korunacaktır. Eğer (vb, aslında UTF-8 göndermek emin olun, UTF-8 charset ayarlayabilirsiniz) tarayıcısı için sayfa oluşturma Tabii ki, aynı şeyi yapmamız gerekir.