• Login
  • Register
  • Zoek
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Filebase Entry
  • More Options

ICTscripters

Dé plek voor IT

Dé plek voor IT

Login

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. PHP + SQL

Forum

  • Beta-testers gezocht voor Crypto-oefenplatform

    Syntax 29 januari 2026 om 16:11
  • Na 15 jaar terug van weggeweest: iCriminals.nl is terug (BETA)!

    Syntax 19 januari 2026 om 09:34
  • Developer Gezocht

    Mikevdk 10 januari 2026 om 18:57
  • Op zoek naar de legends

    Syntax 5 januari 2026 om 13:50
  • [FREE] WeFact Hosting module

    Jeroen.G 13 oktober 2025 om 14:09
  • Help testers nodig voor android app Urgent

    urgentotservices 26 september 2025 om 10:21
  • Versio vervanger

    Jeroen.G 25 augustus 2025 om 15:56
  • Afspraken systeem met planbeperking

    Lijno 1 augustus 2025 om 23:04

Marktplaats

  • 321 Nieuwe Domeinnamen December 2025

    shiga 1 januari 2026 om 10:26
  • Meerdere mafia game template te koop

    Syntax 26 december 2025 om 00:07
  • Van een pixelige afbeelding naar een strakke, moderne website

    Syntax 21 december 2025 om 17:05

pagina.php?id=1 hulp nodig.

  • P493
  • 19 februari 2014 om 23:41
  • P493
    Beginner
    Berichten
    7
    • 19 februari 2014 om 23:41
    • #1

    Hallo allemaal.

    Ik kan er niet uitkomen hoe ik 10 paginas maak in 1 .php file.
    Ik bedoel het dus zo:

    ..?id=1 , ..?id=2 enzo. Met hun eigen indeling, en vanuit daar via een form een complete webpagina te maken met automatisch een id en natuurlijk de indeling.

    Iemand die kan helpen? :)

    Groeten.

    Bewerkt één keer, laatst door P493: Aangevraagde aanpassing (20 februari 2014 om 01:00).

  • Victor
    Master
    Ontvangen Reacties
    102
    Berichten
    1.680
    • 19 februari 2014 om 23:53
    • #2

    Dit kan je met $_GET variabeles doen.
    Je kan een link aanmaken door een simpele <a> tag te gebruiken:

    Code
    <a href="index.php?id=1">Pagina</a>

    Met php kan je dan middels $_GET dat id ophalen.

    PHP
    <?php
    
    
    $id = $_GET['id'];
    
    
    ?>

    Let dan wel op dat deze $id variabele onveilig is! Een user zou deze input kunnen veranderen en zo binnen kunnen dringen in het script.
    Je kan dit oplossen door er htmlentities overheen te doen. (Dit is nog niet super veilig, maar het werkt wel)

    PHP
    <?php
    
    
    $id = htmlentities($_GET['id']);
    
    
    ?>

    Daarnaast kan je ook nog controleren of de id wel voorkomt.(Het veiligst)

    PHP
    <?php
    
    
    $ids = array(1,2,3,4,5);
    
    
    if(in_array($_GET['id'], $ids))
    {
        echo 'ID bestaat!';
    }
    else
    {
        echo 'ID bestaat niet!';
    }
    
    
    ?>
    Toon Meer

    Hoop dat je hier wat mee kunt. ;)

    Met vriendelijke groet,

    Victor
    Beheerder ICTscripters

  • Frenzo.Brouwer
    Web Developer
    Ontvangen Reacties
    35
    Berichten
    535
    • 20 februari 2014 om 02:57
    • #3

    Hoe kan je nog meer z'n $_GET beveiligen?

    Eigenaar van:
    Online Marketing & Webdesign Bureau - https://marketingmetrics.nl/
    Gaming Plaform - https://onetwogaming.nl/
    Banditi - https://banditi.nl/
    Criminas - https://criminas.nl/

  • L. Velthuis
    Vato Gonzalez
    Ontvangen Reacties
    32
    Berichten
    682
    • 20 februari 2014 om 13:51
    • #4
    Citaat van WebMobiel

    Hoe kan je nog meer z'n $_GET beveiligen?


    zou ik ook graag willen weten.

    of is het gebruik van een 'id' nog steeds niet volledig veilig te maken?

    Beginnend DJ! Volg mij op MixCloud!

    Lars Velthuis | Mixcloud

  • Victor
    Master
    Ontvangen Reacties
    102
    Berichten
    1.680
    • 20 februari 2014 om 18:23
    • #5

    In dit geval gaat het om een id, dus kan je checken of de input wel een getal is. Dan is het wel volledig veilig. ;)
    Toch is wel altijd aan te raden om te controleren of dat id wel bestaat.

    Met vriendelijke groet,

    Victor
    Beheerder ICTscripters

  • ZMM
    Beginner
    Berichten
    33
    • 21 februari 2014 om 10:11
    • #6
    PHP
    <?php
    if ( $_GET['id'] == intval($_GET['id']) )
    {
      // zo kan je ook kijken of er extra karakters aan $_GET['id'] zijn toegevoegd, (wel oplettend dat id dan niet met een 0 begint, want die wordt dan weggehaald)
    }
    ?>
  • bramieboy100
    Intermediate
    Berichten
    433
    • 21 februari 2014 om 16:46
    • #7

    Htmlentities is nergens voor nodig alleen als je $_GET['id'] in html wil weergeven. Dan is namelijk XSS mogelijk. Wat jij wil berijken is als je id = 1 hebt dat je dan naar pagina nummer 1 gaat. Dit is erg makkelijk te maken.

    PHP
    if ($_GET['id'] == '1') {
     //echo hier je html of sluit de php en open na de html weer
    } elseif ($_GET['id'] == '2') {
     //En ga zo maar door
    }

    Deze manier is het makkelijkst, verder doet het ook geen rare dingen als iemand de input veranderd en zo is de functie inarray ook onnodig.

    LOL

  • Victor
    Master
    Ontvangen Reacties
    102
    Berichten
    1.680
    • 21 februari 2014 om 17:02
    • #8

    @Bramieboy

    Zo beperk je de mogelijkheden van het script wel. In jouw geval zul je elke pagina apart moeten toevoegen. In mijn geval kan je eventueel de pagina's uit een database halen.
    Daarnaast is htmlentities wel nodig als je met het id resultaten wil gaan ophalen.

    De TS geeft weinig info en dat is de reden waarom ik ervoor gekozen heb om het het veiligst uit te leggen. ;)

    Met vriendelijke groet,

    Victor
    Beheerder ICTscripters

  • Reza
    Professional
    Ontvangen Reacties
    13
    Berichten
    1.536
    • 21 februari 2014 om 18:39
    • #9

    Als je gebruik maakt van prepared statement hoef je je geen zorgen te maken over het beveiligen van de query's. Als je bijvoorbeeld wilt weten of $_GET['id'] wel een cijfer is kun je zoals gezegd intval gebruiken of ctype_digit. Het verschil tussen deze twee is dat ctype_digit alles als een string ziet("123" is dus gewoon een getal). intval die kijkt volgens mij alleen naar integers(weet het niet zeker).

    Met vriendelijke groet,
    Reza.

  • Dennii
    Walking legend
    Ontvangen Reacties
    5
    Berichten
    541
    • 22 februari 2014 om 21:50
    • #10

    Maak gewoon gebruik van case's of pak gewoon een van de vorige gegeven oplossingen en zorg dat ze beveiligd worden.

  • L. Velthuis
    Vato Gonzalez
    Ontvangen Reacties
    32
    Berichten
    682
    • 23 februari 2014 om 21:29
    • #11

    Bedankt voor je uitleg victor! :).

    ook al ben ik geen ts: het is toch nuttig voor mij geweest.

    Beginnend DJ! Volg mij op MixCloud!

    Lars Velthuis | Mixcloud

  • P493
    Beginner
    Berichten
    7
    • 25 februari 2014 om 16:54
    • #12

    Die manieren ken ik al inderdaad.
    Maar Victor, hoe kan ik er voor zorgen dat hij het uit de database haalt met een context erbij?

    Dus dat hij het id uit de database haalt en dat bij dat id een stuk text bij zit.

    Ik heb al op google gezocht en ik kon het niet vinden.
    Hopelijk kan iemand mij hierbij helpen
    :S

  • OmGz
    <?=$_SERVER['REMOTE_ADDR']?>
    Berichten
    61
    • 25 februari 2014 om 16:57
    • #13

    Waarom zoveel gedoe?
    http://nl3.php.net/is_numeric

    En dan gewoon

    PHP
    switch ($_GET['id']){
    case "1" : pagina1(); break;
    case "2" : pagina2(); break;
    }
  • A.Bijlsma
    Web Developer
    Ontvangen Reacties
    3
    Berichten
    1.795
    • 26 februari 2014 om 16:33
    • #14
    Citaat van P493

    Die manieren ken ik al inderdaad.
    Maar Victor, hoe kan ik er voor zorgen dat hij het uit de database haalt met een context erbij?

    Dus dat hij het id uit de database haalt en dat bij dat id een stuk text bij zit.

    Ik heb al op google gezocht en ik kon het niet vinden.
    Hopelijk kan iemand mij hierbij helpen
    :S

    Je bedoeld dit:

    Code
    //Indien je MySQL gebruikt:
    $query = mysql_query("SELECT * FROM tabel WHERE id ='.$_GET['id'].'");
    $result = mysql_fetch_assoc($query);
    $text = $result['text'];
    
    
    
    
    //Indien je MySQLi Procedural gebruikt:
    $query = mysqli_query("SELECT * FROM tabel WHERE id ='.$_GET['id'].'");
    $result = mysqli_fetch_assoc($query);
    $text = $result['text'];
    
    
    //Indien je MySQLi OO gebruikt:
    $query = $mysqli->query("SELECT * FROM tabel WHERE id ='.$_GET['id'].'");
    $result = $query->fetch_assoc();
    $text = $result['text'];
    Toon Meer

    Met vriendelijke groet,

    A.Bijlsma
    Venimo

    Bewerkt 2 keer, laatst door A.Bijlsma (26 februari 2014 om 16:39).

  • Victor
    Master
    Ontvangen Reacties
    102
    Berichten
    1.680
    • 26 februari 2014 om 16:37
    • #15

    Let wel op bij het gebruiken van Anthony's code, het is namelijk SQL-Injection gevoelig.

    Met vriendelijke groet,

    Victor
    Beheerder ICTscripters

  • zwpgangster
    Professional
    Ontvangen Reacties
    13
    Berichten
    1.035
    • 3 maart 2014 om 18:23
    • #16
    PHP
    <html>
    <head>
     <title>WEBSITE NAME</title>
    </head>
    <body>
    PHP
    <?php
    echo'<a href="index.php?id=1">Pagina 1</a>
    <a href="index.php?id=2">Pagina 2</a>';
    
    
    if($_GET['id'] == '1')
    { 
    echo 'PAGINA 1';
    }
    else if($_GET['id'] == '2')
    {
    echo 'PAGINA 2';
    }
    else
    { 
     echo 'ID bestaat niet!';
    }
    ?>
    Toon Meer
    PHP
    </body>
    </html>

    MD-IT Solutions

  • P493
    Beginner
    Berichten
    7
    • 2 april 2014 om 01:22
    • #17

    Opgelost. :thumbup:

  • A.Bijlsma
    Web Developer
    Ontvangen Reacties
    3
    Berichten
    1.795
    • 2 april 2014 om 01:37
    • #18

    Wil je wellicht met ons delen hoe je het hebt opgelost?

    Met vriendelijke groet,

    A.Bijlsma
    Venimo

  • P493
    Beginner
    Berichten
    7
    • 2 april 2014 om 01:50
    • #19
    Code
    // Het id ophalen
    $id = htmlentities ($_GET['id']) or die (mysql_error()); 
    
    
    //Kijken of het id wel bestaat, bestaat het niet, doorlinken naar de index
    $check = mysql_query("SELECT * FROM tabel WHERE iid = $id") or die(mysql_error());
    $num = mysql_num_rows($check);
    
    
    if($num == 0) 
    echo "Dit id bestaat niet!";
    
    
    // Het id selecteren uit de database, en vervolgens de inhoud laten zien
    $result = mysql_query("SELECT * FROM tabel WHERE id = $id"); 
    if($row = mysql_fetch_array($result))
    Toon Meer

    Alleen de config onbreekt, dit heb ik er niet bij gedaan omdat ik een include gebruik.
    Verder ziet de code er niet strak of professioneel uit, ik ben ook geen pro he :D

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!

Maak een account aan Login

ICT Nieuws

  • Fijne feestdagen

    tcbhome 28 december 2025 om 13:55
  • Kritieke update voor Really Simple Security-plug-in

    K.Rens 16 november 2024 om 16:12
  • ING Nederland streeft naar ondersteuning van Google Pay tegen eind februari

    K.Rens 2 november 2024 om 16:09

Blogs

  • Functioneel ontwerp

    Dees 28 december 2014 om 12:38
  • Access Control List implementatie in PHP/MySQL - deel 1/2

    FangorN 28 december 2018 om 12:35
  • Access Control List implementatie in PHP/MySQL - deel 2/2

    FangorN 29 december 2018 om 12:37

Gebruikers die dit topic bekijken

  • 1 Gasten
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacy Policy
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen | Beste Zetes eid kaartlezer webshop
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design