Ckeditor rnrn Sorunu

Ckeditör de bazı sıkıntıları olduğu doğrudur.

Bunlardan biri de bir kayıt işlemi yapıldığında, her "enter" tuşuna basıldığında kendisi otomatik olarak "rnrn" eklemesidir.

Kendi kullandığım çözümü buradan paylaşıyorum.

Eğer PHP kullanıyorsanız, POST işleminden gelen değerleri muhtemelen aşağıdaki şekilde temizleyip veritabanına kaydediyorsunuzdur.

 

"$gelen = mysql_real_escape_string( htmlspecialchars( addslashes( trim ( $_POST[ $gelen ] ) ) ) ) "

 { Diyelim ki, ckeditor editor ile şöyle bir şey yazacaksınız:

deneme

deneme

deneme

}

 

{ Bunun yukarıdaki kod ile karşılığı:

deneme \\r\\n\\r\\ndeneme \\r\\n\\r\\ndeneme

}

 

Yukarıdaki kodu, şu şekilde değiştirirseniz, sorununuz düzelecektir.

 

"$gelen = mysql_real_escape_string( htmlspecialchars( addslashes( trim ( $_POST[ $gelen ] ) ) ) ) "

"$gelen =str_replace( array ("\r","\n","\r","\n")  ,''$gelen )"

 

 

Bazen güvenlik önlemi için yazdığımız kodlar başımıza bela açabiliyor. Enter tuşuna her basışımızda, ckeditör kendisi özel karakterler olan ve alt satıra geçmek için kullanılan "\n" ve "\r" karakterlerini ekliyor. Biz ise bunların başındaki ters bölü işaretini kaldırıyoruz.

Sonuçta normal bir karakter olarak veritabanına kaydediyoruz. Sonra da çıldırıyoruz.

Biz ise buradaki karakterlerin yerine boşluk karakteri ekleyerek sorunu basit bir şekilde hallettik.

 

Neyse efenim, sorun çözülmüş gibi duruyor!

Ben kaçar..

 

1465 Görüntülenme

Yorum Yap