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

  • grickle

    grickle

    22 AĞUSTOS 2006
  • Julian Smith

    Julian Smith

    31 EKİM 2006
  • ThisWeekYT

    ThisWeekYT

    14 Mart 2013