[PHP] Alles wat na # komt uit URL halen

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Stel ik heb een URL á la: http://www.domein.nl/test.php#blaat

Dan zou je inprincipe dmv parse_url het gedeelte na de # kunnen fetchen.

Maar je hebt weinig aan deze functie, als je niet van te voren kunt aangeven hoe de gehele URL 'eruit ziet', zoals bij parse_url wel moet...

Kortom, mijn vraag is, hoe krijg ik de complete URL (zoals je die in je browser ziet in de location bar) te pakken? Zodat ik die in de functie kan gooien.

Ik heb via een print_r m'n $_SERVER global al doorzocht, maar geen van alle (REQUEST_URI enz.) geeft het gedeelte met/na de #...

Hoe kan ik dit oplossen?

Acties:
  • 0 Henk 'm!

  • Yo-han
  • Registratie: December 2001
  • Laatst online: 18-08 20:16

Yo-han

nope.

je kan # vervangen door ? en je waarde dan met $_GET ophalen bijv. ;)

Acties:
  • 0 Henk 'm!

  • 4VAlien
  • Registratie: November 2000
  • Laatst online: 24-06 09:47

4VAlien

Intarweb!

kay ik was brak :z maar goed fragment wordt inderdaad niet in GET request gezet zoals reeds gezegd.

[ Voor 70% gewijzigd door 4VAlien op 02-07-2003 11:47 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Sure, maar ik wil juist proberen dmv deze manier. Lekker onhandig, maar goed.

Ben er inmiddels wel uit dat je dmv Javascript de fragment (#-gedeelte) uit de location bar kunt halen dmv:

code:
1
location.hash


Probleem dat nu nog rest is; hoe krijg ik dit op een één of andere manier in een variabele van PHP (zonder extra reload oid...)?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
4VAlien schreef op 02 juli 2003 @ 11:40:
uhm waarom zou het niet werken? volgens ce manual zijn er geen voorwaarden voor parse_url

http://nl.php.net/parse_url
Nou, zoals ik al zei, er is geen PHP variabele (althans dat ik weet/ondervonden heb) die óók het gedeelte na de # geeft...

Acties:
  • 0 Henk 'm!

  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 12:26

RayNbow

Kirika <3

Verwijderd schreef op 02 July 2003 @ 11:40:
...

Probleem dat nu nog rest is; hoe krijg ik dit op een één of andere manier in een variabele van PHP (zonder extra reload oid...)?
Niet, je browser stuurt het #-gedeelte niet naar de server.

Ipsa Scientia Potestas Est
NNID: ShinNoNoir


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Het kan wel want je kunt het #-gedeelte oproepen (location.hash) dmv Javascript, nu is de volgende stap alleen hoe je dit als een variabele in PHP kunt krijgen...

[ Voor 6% gewijzigd door Verwijderd op 02-07-2003 11:50 ]


Acties:
  • 0 Henk 'm!

  • dingstje
  • Registratie: Augustus 2002
  • Laatst online: 02-01-2024
Je moet werken met een pagina reload. Die # wordt enkel gebruikt binnen de browser en wordt dus niet doorgestuurd naar de server. Je zou via JavaScript een cookie kunnen zetten en dan de pagina reloaden als je 'm niet wilt meesturen in de GET.

If you can't beat them, try harder


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Origineel:
Een reload is dus eigenlijk wel een vereiste.

Dan zal ik eens gaan kijken wat ik kan doen.

Iig bedankt.

Edit 1:
Ik zat net zo even te denken, en toen kwam "ob_start", de PHP functie, in me op. Zou het niet kunnen dat ik de output van de javascript location.hash laat opnemen en deze alvorens in een variabele te stoppen (ob_get_contents) en dan de rest van de pagina laat 'genereren'?

Ik ga het eens proberen iig, en laat het jullie weten mits het gelukt is :)

Edit 2:
Stom van me, natuurlijk kan dit niet :S De output van een javascript functie 'bestaat niet'... (is in ieder geval niet te pakken uit de bron oid)

[ Voor 83% gewijzigd door Verwijderd op 02-07-2003 12:17 ]


Acties:
  • 0 Henk 'm!

  • Yo-han
  • Registratie: December 2001
  • Laatst online: 18-08 20:16

Yo-han

nope.

Heb je hier niets aan? javascript: post/get form values

de post van Bosmonster lijkt mij precies wat je bedoelt als ik je vraag goed begrijp... :)

[ Voor 37% gewijzigd door Yo-han op 02-07-2003 13:03 ]

Pagina: 1