"Somepage.php # adı" hash sonra değerini almak nasıl?

3 Cevap php

Belirli bir url için, ben veritabanından isim-sonra-hash yaşını almak istiyorum. şöyle url için thepage.php#Madonna, siz "119!" görürsünüz.

Nasıl bir url karma sonra değerini ayıklamak? (I güvenli bir all-tarayıcı-uyumlu-JavaScript olmayan yol gerekir). Ben $ _GET ['sonra hash'] gibi yapmak istiyorum.

AJAX ve jQuery geçmişi eklentisi kullanmak istiyorum çünkü ben GET kullanarak değilim nedenidir.

Temelde ne istediğim karma sonra atanan değere göre sunucudan veri almak için ajax kullanmak için.

3 Cevap

Ben bunun mümkün olduğunu sanmıyorum. # Sonra dize geçerli sayfa içinde bir çapa adı olarak tarayıcı tarafından yorumlanır. Bu sunucuya geçmedi.

Javascript

window.location.hash Sana bu değeri verecektir. Daha sonra sonuçlar için sunucuya (AJAX) iletebilirsiniz.

PHP

parse_url(); ve Fragment edin

Return Values

Ciddiye hatalı biçimlendirilmiş URL'lerin parse_url () FALSE döndürür ve bir E_WARNING yayabilir. Aksi takdirde bir ilişkisel dizi olan bileşenleri olabilir (en az bir), döndürülür:

  • şeması - örneğin http
  • evsahibi
  • liman
  • kullanıcı
  • geçmek
  • yol
  • sorgu - soru işaretinden sonra?
  • fragment - after the hashmark #

Bu soru pek mantıklı gelmedi, bunu açıklığa kavuşturmak gerekir.

Sen Javascript olmadan URL'yi karma istiyorum, ancak Ajax tarafından kullanılabilecek bir şekilde?