Fragment z Nette\Http\Url je vždy prázný

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
pidiclovek
Člen | 91
+
0
-

Ahoj,

narážím na problém práce se třídou HttpRequest, respektive s UrlScript, kterou bych chtěl použít k parsování url. A potřebuji získat ‚fragment‘ url, tedy část za #, ale ať mu podsouvám jakékoliv url, vždy mi vrátí fragment prázdný. Je to vůbec implementované?

běžím na Nightly, ale rychle jsem otestoval v aktuálním sandboxu z downloads
(NetteFramework-2.0.1-PHP5.3)

přidal jsem pouze do presenteru dump($this->context->httpRequest->getUrl()); a fragment zůstává za všech okolností prázdné. Příklad – pro url http://localhost/NetteFramework-2.0.1-PHP5.3/sandbox/www/?name=456#fragment vypadá dump:

Nette\Http\UrlScript(10) {
   scriptPath private => "/NetteFramework-2.0.1-PHP5.3/sandbox/www/" (41)
   scheme private => "http" (4)
   user private => ""
   pass private => ""
   host private => "localhost" (9)
   port private => 80
   path private => "/NetteFramework-2.0.1-PHP5.3/sandbox/www/" (41)
   query private => "name=456" (8)
   fragment private => ""
   frozen private => TRUE
}

je to jedno z těch wtf, kdy chce člověk uškrtit autory dokumentace takzvaně napřed :) Bo dělám něco špatně? Díky

Aurielle
Člen | 1281
+
0
-

Fragment se na server nepřenáší, proto ho ani není možné odchytit.

pidiclovek
Člen | 91
+
0
-

No to je trapas :D jdu se zahrabat, díky za osvětlení :) budu to tam muset holt posílat javascriptem… Každopádně díky

hrach
Člen | 1834
+
0
-

Pozor, ie6 je ho schopna za jostych okolnosti prenest :D