login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Redirect

Offline Kippy - 04/11/2004 00:35 (laatste wijziging 24/06/2005 08:23)
Avatar van KippyNieuw lid http://www.test-domein.nl/Kippy/
Redirecten naar:
http://www.test-domein.nl/site.php?van=Kippy

de links staan in de database... ongeveer 80 mensen willen een http://www.test-domein.nl/gebruikersnaam/ adres in plaats van een /site.php?van=Kippy

zoals ik al zei waarheen is in principe makkelijk... want hun links staan bij hun gebruikersnaam in onze db...

11 antwoorden

Gesponsorde links
Offline Gerard - 04/11/2004 01:11
Avatar van Gerard Ouwe rakker dit kun je aan de hand van htaccess regelen.
als je zoekt op sitemasters zal je zeker wat meer topics hierover vinden alsmede wat scripts.
Offline Kippy - 04/11/2004 01:56
Avatar van Kippy Nieuw lid sorry... ik kan het dus niet vinden... 
Offline zwobbel - 04/11/2004 11:11
Avatar van zwobbel PHP gevorderde idd ik zou ook wel is willen weten hoe je dit doet.
Offline Slipie - 04/11/2004 12:53
Avatar van Slipie PHP beginner Nou zo moeilijk is het niet.
Allereerst moet je wel op een apache server draaien.
Anders heb je niks aan .htacces.
Dan maak je een .htacces bestand aan met maar 1 regeltje erin
  1. ErrorDocument 404 /error/404.php

Dit is het makkelijke gedeelte.
Je geeft dus aan dat je server niet met een standaard error pagina moet komen zodra hij het bestand of de map niet kan vinden.
Want wat is het nou als jij een gebruiker zijn pagina met een /gebruikersnaam achter het domein wilt gebruiken dan komt hij inprinciepe met een error want de map met de gebruikersnaam bestaat niet(of wel maar daar moet ej voor zorgen dat dat dus niet kan).
vervolgens maak je een nieuwe error pagina met een mysql query erin
  1. <?
  2. //mysql connectie
  3. mysql_connect("host","user","pass");
  4. //de naam uit de url exploden
  5. $des = explode("/", $_SERVER['REQUEST_URI']);
  6. //query aanpassen aan je eigen tabel
  7. $query = mysql_query("SELECT naam FROM gebruikers WHERE naam='" . $des[1] . "'");
  8. //kijken of de gebruiker bestaat
  9. if(mysql_num_rows($query) == 0) {
  10. //gebruiker bestaat niet dus een error
  11. echo "404 de pagina of gebruiker bestaat niet";
  12. } else {
  13. //gebruiker bestaat dus we redirecten naar de juiste pagina
  14. header("location: site.php?van=" . $des[1]);
  15. }
  16. ?>


dit script sla je op als 404.php in de map error(of een andere maar dan moet je het htacces bestand aanpassen).
En voila klaar ben je 
Offline Maarten - 04/11/2004 12:58
Avatar van Maarten Erelid Is er ook zoiets mogelijk met een subdomein?
Offline Slipie - 04/11/2004 13:00
Avatar van Slipie PHP beginner Yup maar daarvoor moet je host wel bepaalde dns instellingen hebben.
Ik heb nu even geen tijd meer maar ik zal later wel laten zien hoe dat moet.
Offline Frisbee - 04/11/2004 13:08
Avatar van Frisbee HTML beginner dan heb ik een wat lastigere vraag.. is het mogelijk om verschillende 404 pagina's te laten zien voor verschillende domeinnamen die op 1 server draaien?

je hebt dus:

http://www.domeinnaam1.nl --> http://192.168.0.1/domeinnaam1
http://www.domeinnaam2.nl --> http://192.168.0.1/domeinnaam2

ze gebruiken dus dezelfde htacces.. is het mogelijk toch een verschillende 404 te krijgen?
Offline b4nkr0bz0r - 04/11/2004 13:13
Avatar van b4nkr0bz0r PHP gevorderde gewoon het script aanpassen =]
Offline zwobbel - 04/11/2004 13:33
Avatar van zwobbel PHP gevorderde uhm dome vraag meschien mara waar staan die verdomde .htacces gedoe.. i kvind die files niet echt en ik draai een appache .. phptriad ... dus ik heb hier een map htdocs en dergerlijke maar waar staan die htacces ??
Offline Slipie - 04/11/2004 16:35
Avatar van Slipie PHP beginner antwoord op de vraag van frisbee:
Je checkt gewoon de domein naam
  1. <?
  2. $des = explode(".", $_SERVER['PHP_SELF']);
  3. if($des[1] == "domein1") {
  4. header("location: http://domein1.nl/error.php");
  5. } elseif($des[1] == "domein2") {
  6. header("location: http://domein2.nl/error.php");
  7. }
  8. ?>


En zwobbel die .htacces bestaat nog niet!
Die moet je zelf aanmaken in de directory waarvanaf je de error pagina wilt gebruiken.
Dus je kan um in je root zetten of een map van een niveau lager.
Offline twopeak - 06/11/2004 19:22 (laatste wijziging 06/11/2004 19:23)
Avatar van twopeak Gouden medaille

PHP ver gevorderde
ik vind deze oplossing niet fantastisch...
wat als iemand echt een 404 pagina aanvraagd?

Het beste zou zijn om met de rewrite engine van htaccess te werken... (a la limite kan je ook met de multiview werken, maar daar heb ik het persoonlijk niet zo voor)
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.351s