Referer bepalen zonder link

Status
Niet open voor verdere reacties.

ErikBooy007

Terugkerende gebruiker
Lid geworden
24 mei 2007
Berichten
3.814
Ik ben bezig met een scriptje waarmee ik het volgende kan:

Je surft ergens op een internetpagina, waarvan je denkt die pagina wil ik vast nog eens vaker bezoeken. Dan kun je de pagina natuurlijk bookmarken, maar wat als je die pagina nog eens van een andere computer wilt bekijken? Daar bedacht ik het volgende op:

Je zet de pagina waar ik nu aan werk ik je bookmarks (in de url zit een get-variabele met je emailadres), eventueel met een snelkoppeling en als je zo'n pagina tegenkomt, dan open je die pagina wat er dan gebeurt is het volgende:

  • Het script kijkt of het email adres geldig is
  • Er wordt een textfile geopend / aangemaakt met als naam het emailadres en de url wordt daarin genoteerd
  • Er wordt een email verzonden naar het ingegeven email-adres
  • je keert terug naar de pagina waar je was

Op zich allemaal redelijk eenvoudig dus. Eén probleempje echter. Hoe kom ik erachter wat de url is die men wil bewaren. In mijn gedachten had ik het al helemaal uitgestippeld door $_SERVER['HTTP_REFERER'] te gebruiken, ware het niet dat die niet bestaat aangezien er niet op een link geklikt wordt.

Dus mijn vraag na dit verhaal is:

Hoe achterhaal je de url van de vorige pagina, als je pagina NIET middels een link geopend wordt.

(en is dit überhaupt mogelijk. Als iemand trouwens een JS oplossing weet, om de url te achterhalen, mag ook. Dan verzin ik er zelf wel weer een 'workaround' voor.)

Bij voorbaat dank!
 
Laatst bewerkt:
Kijken of je een andere $_SERVER of $_ENV variabele kunt gebruiken?

Het is niet echt een specifiek antwoord dat ik zo weet maar probeer dit eens.

Testing purpose:
PHP:
foreach($_SERVER AS $key => $value) {
  echo '<b>$_SERVER['. $key .'] => '. $value .'</b><br />';
}
foreach($_ENV AS $key => $value) {
  echo '<b>$_ENV['. $key .'] => '. $value .'</b><br />';
}

Zet je dat op de pagina die je gebruikt, kwestie van kijken waar de waarde in zit die je zoekt.
 
Helaas, hij komt er niet in voor. Op zich wel een goed idee trouwens. Ik heb ook al geprobeerd om met JavaScript in de geschiedenis van de browser te wroeten, maar dit wordt (waarschijnlijk uit veiligheidsoverwegingen) geblokkeerd.

Anders zou ik nog het volgende kunnen doen:

PHP:
<script type="text/javascript">
  window.location = 'saveurl.php?url=' + history[1].src;
</script>

Maar dat werkt dus ook niet. :(
 
Ik denk niet dat dat mogelijk is... zo wel dan zullen spammers het ideaal vinden, als je via een webpage kunt browsen door pagina's die mensen bezocht hebben voor ze op de jouwe kwamen :)
 
Tsja, daar was ik al bang voor :(

Enig idee dan nog hoe ik mijn idee toch kan realiseren? Is het op enige manier om door de browser de url te laten mee sturen? Eventueel met goedkeuring van de gebruiker? Dat er een popup-je komt dat aangeeft dat het script in de geschiedenis wil kijken en dat de gebruiker daar toestemming voor moet geven?

En ik kan het natuurlijk zo maken dat je de url nog in moet vullen, met copy + paste is dat nog geen enorme moeite, maar het zou mooi zijn als het alleen met een (paar) muisklik(ken) kan realiseren.
 
Je zou een plugin kunnen maken voor FireFox, (misschien zijn die er zelfs al)

Anders vrees ik dat je zult moeten copy-pasten...
 
Zover gaat mij programmeer kennis helaas (nog) niet. Qua website / -applicaties kan ik me aardig redden, maar dat gaat nog te ver.

Ik ga toch eens googleen wat er over te vinden is! In ieder geval bedankt voor de hulp!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan