$_GET variabelen in Javascript!

Door Nick Mulder, 20 jaar geleden, 5.517x bekeken

Met dit script kan je $_GET variabelen laden in Javascript.
Tevens is het mogelijk om de asynchrone tegenhanger van $_GET te gebruiken, namelijk met #, net zoals bij Hyves (dit is de standaard instelling).

Je kan de array met $_GET waardes openen d.m.v. get["waarde"];

Voor de uitleg waarom het script handig is quote ik Jelmer:

Quote:
Het kan op zich handig zijn waneer je een soort cross-compatibility tussen eem AJAX-achtige en een standaard PHP website wilt maken. Op deze manier kan je toch links bookmarken en versturen naar andere gebruikers, en links gebruiken zonder dat de pagina vernieuwt, bijvoorbeeld om 'dynamisch content' op te halen. Uiteraard alleen waneer je # ipv ? gebruikt. In PHP hak je wat rond en zorg je ervoor dat # en ? gelijke waarde hebben, zodat ook die er fancy stuff mee kan doen.


Er zijn 2 versies van het script, de gewone en de gecomprimeerde.

Voorbeeld: http://ypm-design.com/JS%20GET/index.htm#test=var&test2=var2

Gesponsorde koppelingen

PHP script bestanden

  1. dollarget-variabelen-in-javascript

 

Er zijn 9 reacties op 'Dollarget variabelen in javascript'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
- -
- -
20 jaar geleden
 
0 +1 -0 -1
of, je doet het slimmer, namelijk zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
    foreach ($_GET as $key => $value)
    {

        echo "get['" . $key . "'] = '" . $value . "';\n";
    }

?>
Nick Mulder
Nick Mulder
20 jaar geleden
 
0 +1 -0 -1
Dan gebruik je toch weer PHP ;) En je kan dan niet met # uitlezen...
(het duurde ff voor ik het begreep maargoed =P)
B a s
B a s
20 jaar geleden
 
0 +1 -0 -1
Misschien is het ook nuttig om bij het script te vermelden waarom je dit zou willen doen.
Jelmer -
Jelmer -
20 jaar geleden
 
0 +1 -0 -1
Het kan op zich handig zijn waneer je een soort cross-compatibility tussen eem AJAX-achtige en een standaard PHP website wilt maken. Op deze manier kan je toch links bookmarken en versturen naar andere gebruikers, en links gebruiken zonder dat de pagina vernieuwt, bijvoorbeeld om 'dynamisch content' op te halen. Uiteraard alleen waneer je # ipv ? gebruikt. In PHP hak je wat rond en zorg je ervoor dat # en ? gelijke waarde hebben, zodat ook die er fancy stuff mee kan doen.
 
0 +1 -0 -1
Voor mensen die dit script gebruiken gaan, let erop dat je de <?php en ?> weglaat.

Verder is het best een handig script.

Edit:

WTF? Gebruik ik [ignore][/ignore] is het nog niet goed, en wordt er een tag voor mijn <?php gezet...
Jorik
Jorik
20 jaar geleden
 
0 +1 -0 -1
Op zich slim en handig.. maar als AJAX/Javascript niet ondersteund wordt, ben je er nog niet. Als je namelijk een andere waarde achter de # invoert, herlaad ie de pagina niet, dus weet php niet dat er een verandering is...
Jelmer -
Jelmer -
20 jaar geleden
 
0 +1 -0 -1
Je moet met PHP gewoon kijken of er iets in de URL na # komt. Zoja, doe dan net alsof het # een ? is. Maar standaard maak je met PHP gewoon de links met ?. Middels Javascript maak je de url's die een # bevatten.
Nick Mulder
Nick Mulder
20 jaar geleden
 
0 +1 -0 -1
Ik beweer ook niet dat dit zoekmachine vriendelijk is ofzo...
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Thomas
Thomas
19 jaar geleden
 
0 +1 -0 -1
Ik gebruik deze om Get waarders achter file.html# te halen in javascript:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
function $_GET(key_str) {
if(window.location.hash) {
var query = window.location.hash.substr(1);
var pairs = query.split(/&|;/);
for(var i = 0; i < pairs.length; i++) {
var pair = pairs[i].split("=");
if(unescape(pair[0]) == key_str)
return unescape(pair[1]);
}
}
}

aangepast met zelfde werking als deze word het dan:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
function $_GET(key_str) {
if(window.location.search) {
var query = window.location.search.substr(1);
var pairs = query.split(/&|;/);
for(var i = 0; i < pairs.length; i++) {
var pair = pairs[i].split("=");
if(unescape(pair[0]) == key_str)
return unescape(pair[1]);
}
}
}

Gebruik:
Bij bijvoorbeeld: test.php?t=test
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
document.write= $_GET['t];
//Dit geeft dan dus test

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. dollarget-variabelen-in-javascript

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.