SORU
6 AĞUSTOS 2010, Cuma


Ne karakterler girdi etiketi içinde HTML Adı özniteliği izin verilir?

name öznitelik herhangi bir karakter filtrelemek için gerekli olup olmadığını merak ediyorum <input>s dinamik olarak oluşturur bir PHP komut dosyası var.

Adı bir harf ile başlamak zorunda olduğunu biliyorum, amaBaşka bir kural bilmiyorum. PHP bu formu veri dizileri oluşturmak için kullandığından köşeli izin verilmesi gerekir diye düşündüm. Hakkında parantez? Boşluk?

CEVAP
6 AĞUSTOS 2010, Cuma


[X]bir HTML dosyası ekleyebilirsiniz herhangi bir karakter iyi <input name> koymak. Değerleri klasik biyokimyasal olarak yorum yazıyor <input name> olarak tanımlanır içeren CDATA, Bu yüzden tek şey yapamazsın koymak vardır kontrol kodları ve geçersiz codepoints bu alttaki standart (SGML ya da XML) izin vermiyor.

Değerleri klasik biyokimyasal HTML4 spektrometresi A3 alıntı:

Not. "Get" metodu form verilerini ASCII değerleri ayarlamak kısıtlar karakter. ""(Şifre türü="çok parçalı/-veri formu") tüm İSO10646 karakter kümesini kapsayacak şekilde belirtilir. yöntem sonrası tek

Ancak bu uygulama gerçekten doğru değil.

Teori olduğunu application/x-www-form-urlencoded veri yok mekanizma belirtmek için bir kodlama formu isimlerini veya değerlerini kullanarak ASCII olmayan karakterler ya da “belirtilen” olarak çalışmak ve bunu kullanmalısın Gönderildi multipart/form-data yerine.

Ne yazık ki, gerçek dünyada, hiçbir tarayıcı teorik olarak, multipart/form-data POST isteği bir vücudun altbölüm başlıkları bile alanlar için bir kodlama belirtir. (Mozilla bir kez uygulamak için çalıştı, ama sunucular kırdı gibi sözünden inanıyorum.)

Ve hiçbir tarayıcı eklemek için gerekli olabilir, şaşırtıcı derecede karmaşık ve çirkin RFC2231 standart ASCII olmayan çok parçalı bu alt alan adları başlıkları kodlanmış uygular. Her durumda, multipart/form-data tanımlayan HTML spec doğrudan RFC2231 kullanılmalıdır ve yine, eğer denersen sunucuları kıracak böyle bir şey yok.

Durumun gerçekliğini kodlama adları için kullanılıyor ve form gönderme, ne olursa olsun değerleri bilmek yolu yoktur. Tarayıcılar alan adları ne olacak ve içeren değerler ASCII olmayan karakterler ve SONRASI şeklinde iki tür için aynıdır: sayfa kullanmışlar içeren. kodlamayı kullanarak kodlar ASCII olmayan form adları her şey en fazla kırılmış.

DLH:

Ad, diğer öğeler için daha türü için farklı bir veri var?

CDATA olmayan aslında tek unsur <meta>. HTML4 spec attribute list name; Aşırı bir öznitelik adı, farklı unsurları çok farklı anlamlara sahip olduğunu tüm farklı kullanımları için bkz. Bu genellikle kötü bir şey olarak kabul edilir.

Ancak, genellikle bu gün name form alanları kontrol bir isim) ve param plugin-belirli bir parametre tanımlayıcısı nerede () dışında kaçının. Sadece iki anlamı ile uğraşmak. <form> sayfada <a> gibi tanımlayıcı öğeler için name eski-okul (id kullanın) kaçınılmalıdır.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 07cadikiz07

    07cadikiz07

    17 EKİM 2007
  • Gavin Hoey

    Gavin Hoey

    21 Aralık 2007
  • The White House

    The White Ho

    21 Ocak 2006