SORU
11 Temmuz 2010, Pazar


Raylar üzerinde Ruby _snowman, param için 3 formları nedir?

Ruby on Rails 3 (kullanmakta Beta 4), gördüğüm kullanırken form_tag form_for yardımcıları orada bir gizli alan adında _snowman değeri ☃ (Unicode \x9731) gösteriliyor.

Bu ne için?

CEVAP
27 Temmuz 2010, Salı


Bu parametre, Internet Explorer (5, 6, 7 . zorlamak için Form eklendi ^em>ve8) unicode. gibi parametrelerini kodlamak için

Özellikle bu hata, kullanıcı Latin-1 tarayıcının kodlama anahtarları varsa tetiklenebilir. Bir kullanıcı bir şey görünüşte çok deli yapmaya karar vereceğini anlamak için, this google search check out. Bir kez kullanıcı web-sitesine Latin-1 modu, eğer kullandıkları karakter olabilir anlaşıldığı gibi hem Latin-1 ve Unicode (örneğin, ben ya da ç, ortak adları), İnternet Explorer kodlamak onları Latin-1.

Bu eğer bir kullanıcı "Ché Guevara", yanlış sayesinde ulaşır sunucu tarafında. arar anlamına gelir Ruby bu metni kaçınılmaz olarak düzenli ifade motoru içine ulaştığında bir kodlama hatası neden olur 1.9,. Ruby 1.8, kullanıcı için hatalı sonuçlara neden olur.

Oluşturarak parametre sadece anlaşılmıştır IE gibi bir unicode karakter, biz zorlama YANİ bak kabul et-karakter kümesi özniteliği, sonra söyler bunu kodlamak tüm karakterleri UTF-8 bile olanlar olabilir kodlanmış Latin-1.

Ruby 1.8, son derece önemsiz UTF-8 veritabanı içine Latin-1 veri elde etmek için olduğunu unutmayın (berihiçbir şeytüm kullanıcı herhangi bir noktada, gönderilen bayt UTF-8, geçerli bir karakter olup olmadığını kontrol eder yığını). Ruby uygulamaları için bir sonucu olarak, aşırı derecede yaygın (ve vb uygulamaları PHP. vb.) bu sergi için Kullanıcı-bakan böcek, ve bu nedenle kullanıcılar palyatif bir tedbir olarak kodlamasını değiştirmek için denemek için son derece yaygın.

O dedi, ne zaman yazdım bu yama, bilmiyordum adını, parametre olacağını hiç görünür bir kullanıcı bakan yer yok formları kullanmak için ALMAK eylem, gibi arama formları). Bunun nasıl olduğunu, _e, bu parametreyi yeniden adlandırın ve zararsız görünüşlü daha fazla unicode karakteri kullanacağız.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • bombjack2991

    bombjack2991

    29 HAZİRAN 2008
  • maxman.tv

    maxman.tv

    29 EKİM 2013
  • Neil Cicierega

    Neil Ciciere

    22 Mart 2006