• 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

  • Op zoek naar de legends

    Syntax 5 januari 2026 om 13:50
  • Na 15 jaar terug van weggeweest: iCriminals.nl is terug (BETA)!

    Syntax 4 januari 2026 om 10:58
  • Developer Gezocht

    K.Rens 30 december 2025 om 12:32
  • [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
  • Partner Gezocht om meerdere NFT Collecties op Open Sea te Plaatsen

    NFT Art Designer 1 maart 2025 om 14:08

Marktplaats

  • 321 Nieuwe Domeinnamen December 2025

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

    Syntax 28 december 2025 om 21:20
  • Van een pixelige afbeelding naar een strakke, moderne website

    Syntax 21 december 2025 om 17:05

Lijst ene klantnummer wel, andere niet.

  • T.Nijborg
  • 17 maart 2014 om 16:54
  • T.Nijborg
    Hoofd Moderators
    Ontvangen Reacties
    31
    Berichten
    504
    • 17 maart 2014 om 16:54
    • #1

    Heey allemaal,

    Ik ben een klantenpaneel aan het maken, en nou ben ik bezig met de login, nou heb ik 1 probleem ermee, mijn klantnummer leest die wel, maar van een 2, test account niet. Misschien zien jullie het probleem.

    De code voor gegevens uit de db:

    PHP
    // STANDAARD GEGEVENS BEGIN //
    $info = mysqli_query($con, "SELECT * FROM customers");
    $gegevens = mysqli_fetch_array($info);


    De code die checkt of de gegevens kloppen:

    PHP
    <?php
    // SYSTEEM INLOGGEN BEGIN
    
    
    // Klantnummer En wachtwoord
    $klantnummer = $_REQUEST['klant'];
    $wachtwoord = $_REQUEST['pass'];
    
    
    //Form openen
    if(isset($_POST['login'])){
    
    
    //Pass en klant beveilligen
    $klant = md5(sha1($klantnummer));
    $pass = md5(sha1($wachtwoord));
    
    
    // checks
    if($gegevens['klantnummer'] == $klant){
    if($gegevens['wachtwoord'] == $pass){
    
    
    //Sessie zetten
    $_SESSION['user'] = $klant;
    header('Refresh: 5; url=index.php');
    
    
    } else{
    $fout = $lang_pass_fout;
    }
    } else {
    $fout = $lang_klantnummer_fout;
    }
    
    
    //Form sluiten
    }
    
    
    // SYSTEEM INLOGGEN EINDE
    
    
    if($_SESSION['user'] == ""){
    ?>
    Toon Meer

    Ik heb alles geprobeerd.. Iemand enig idee?

    Gr,

    PHP, JAVA, C#, JAVASCRIPT, HTML(5), CSS(3) developer.
    Vragen?! Stuur me gerust een prive bericht :) !

  • Reza
    Professional
    Ontvangen Reacties
    13
    Berichten
    1.536
    • 17 maart 2014 om 17:34
    • #2

    Zou je jouw hele code kunnen posten op pastebin.com en de link hier delen?
    Verder is jouw code, naar mijn mening, iets te omslachtig qua 'efficiëntie' en zou ik een inlog systeem anders aanpakken.

    Qua debuggen zou ik nu even eens var_dump uitproberen, dus:

    PHP
    var_dump($gegevens['klantnummer'], $gegevens['wachtwoord'], $klant, $wachtwoord);

    Zo kun je al kijken of de gegevens ook echt kloppen, verder snap ik niet echt waarom je het klantnummer beveiligd?

    Met vriendelijke groet,
    Reza.

  • T.Nijborg
    Hoofd Moderators
    Ontvangen Reacties
    31
    Berichten
    504
    • 17 maart 2014 om 17:51
    • #3

    puur voor de veilligheid, en dit is de code die ervoor zorgt dat dit het doet, hele codes ga ik niet opzetten. Maar hij pakt maar 1 rij uit de database, en dat snap ik niet ...

    PHP, JAVA, C#, JAVASCRIPT, HTML(5), CSS(3) developer.
    Vragen?! Stuur me gerust een prive bericht :) !

    Bewerkt één keer, laatst door mentimjojo (17 maart 2014 om 18:07).

  • bramieboy100
    Intermediate
    Berichten
    433
    • 17 maart 2014 om 18:28
    • #4
    PHP
    // STANDAARD GEGEVENS BEGIN //
    $info = mysqli_query($con, "SELECT * FROM customers");
    $gegevens = mysqli_fetch_array($info);

    Hier selecteer je alle rijen en alle kolommen waardoor er een array in een array is. Hou je hier wel rekening mee? Ik zie dat namelijk nergens in je script staan.

    Het is inderdaad onnodig dat je je klantnummer codeert omdat het handiger is als je je klantnummer in je klantenpaneel kan zien. Zo kan je je klantnummer meteen doorgeven en je hebt alle info. Verder als je iets codeert doe dit dan niet dubbel omdat de hash dan minder uniek wordt. Daarbij is ook het risico dat je twee verschillende klantnummers hebt maar met de dezelfde hash.

    LOL

  • T.Nijborg
    Hoofd Moderators
    Ontvangen Reacties
    31
    Berichten
    504
    • 17 maart 2014 om 18:31
    • #5

    Hoe werkt het dan bramieboy100? want ik snap er niks meer van-,-. Verrote mysqli

    PHP, JAVA, C#, JAVASCRIPT, HTML(5), CSS(3) developer.
    Vragen?! Stuur me gerust een prive bericht :) !

    Bewerkt één keer, laatst door mentimjojo (17 maart 2014 om 19:02).

  • bramieboy100
    Intermediate
    Berichten
    433
    • 17 maart 2014 om 19:48
    • #6

    Je hebt tenminste een gegeven nodig om geen array in een array te krijgen dat uniek is. Bijvoorbeeld een id. Dan haal je dit op met een SQL query en dan kan je $gegevens['password'] bij wijze van spreken doen. Maar mij is nog niet helemaal duidelijk wat je precies wil bereiken.

    Mag ik trouwens vragen waarom je request gebruikt en niet post. Request zorgt ervoor dat je get en post kan gebruiken.

    LOL

  • T.Nijborg
    Hoofd Moderators
    Ontvangen Reacties
    31
    Berichten
    504
    • 17 maart 2014 om 19:53
    • #7

    Hallo,

    Punt is dat ik niet veel snap van die mysqli... En wat ik probeer is een inlog systeem te bouwen..

    Dit is de code die ik nu heb, maar dat pakt alleen de eerste rij waardoor je alleen met de gegevens vanaf de 1ste rij in de tabel kan inloggen, hoe selecteer ik alle rijen

    PHP
    // SYSTEEM INLOGGEN BEGIN
    
    
    //database
    $result = mysqli_query($con,"SELECT * FROM customers");
    $gegevens = mysqli_fetch_array($result);
    
    
    //Form openen
    if(isset($_POST['login'])){
    
    
    // Klantnummer En wachtwoord
    $klant = $_POST['klant'];
    $wachtwoord = $_POST['pass'];
    //Pass en klant beveilligen
    $pass = sha1($wachtwoord);
      
    // checks
    if($gegevens['klantnummer'] == $klant){
    if($gegevens['wachtwoord'] == $pass){
    
    
    
    
    //Sessie zetten
    $_SESSION['user'] = $klant;
    header('Refresh: 5; url=index.php');
    
    
    } else{
    $fout = $lang_pass_fout;
    }
    } else {
    $fout = $lang_klantnummer_fout;
    }
    
    
    //Form sluiten
    }
    
    
    
    
    // SYSTEEM INLOGGEN EINDE
    Toon Meer

    PHP, JAVA, C#, JAVASCRIPT, HTML(5), CSS(3) developer.
    Vragen?! Stuur me gerust een prive bericht :) !

  • Reza
    Professional
    Ontvangen Reacties
    13
    Berichten
    1.536
    • 17 maart 2014 om 20:05
    • #8

    " SELECT klantnummer,wachtwoord FROM customers WHERE klantnummer = '".$_POST['klant']." "

    Dat stukje moet natuurlijk nu wel na de isset en na het stukje dat je $_POST omzet naar variabelen. Ook zou ik de input van de user beveiligen.'

    Met vriendelijke groet,
    Reza.

  • T.Nijborg
    Hoofd Moderators
    Ontvangen Reacties
    31
    Berichten
    504
    • 17 maart 2014 om 20:11
    • #9

    Nu heb ik dit en nog steeds niet werkend...

    PHP
    // SYSTEEM INLOGGEN BEGIN
    
    
    //Form openen
    if(isset($_POST['login'])){
    
    
    // Klantnummer En wachtwoord
    $klantnummer = $_POST['klant'];
    $wachtwoord = $_POST['pass'];
    //Pass en klant beveilligen
    $pass = sha1($wachtwoord);
    
    
    //database
    $result = mysqli_query($con,"SELECT klantnummer,wachtwoord FROM customers WHERE klantnummer = '".$_POST['klant']."'");
    $gegevens = mysqli_fetch_array($result);
      
    // checks
    if($gegevens['klantnummer'] == $klantnummer){
    if($gegevens['wachtwoord'] == $pass){
    
    
    
    
    //Sessie zetten
    $_SESSION['user'] = $klant;
    header('Refresh: 5; url=index.php');
    
    
    } else{
    $fout = $lang_pass_fout;
    }
    } else {
    $fout = $lang_klantnummer_fout;
    }
    
    
    //Form sluiten
    }
    
    
    
    
    // SYSTEEM INLOGGEN EINDE
    Toon Meer

    PHP, JAVA, C#, JAVASCRIPT, HTML(5), CSS(3) developer.
    Vragen?! Stuur me gerust een prive bericht :) !

  • Reza
    Professional
    Ontvangen Reacties
    13
    Berichten
    1.536
    • 17 maart 2014 om 20:20
    • #10

    Nogmaals als het verkeerd resultaat geeft, moet je het gaan debuggen. Zet ergens var_dump() neer(met de variabelen erin) en kijk wat eruit komt. Zo weet je of de query wel het goede resultaat ophaalt of niet...

    Met vriendelijke groet,
    Reza.

  • bramieboy100
    Intermediate
    Berichten
    433
    • 17 maart 2014 om 20:53
    • #11

    Alle rijen selecteren is een erg omslachtige manier en ook onveilig. Selecteer alleen de data die je nodig hebt dus bijv SELECT * FROM tabel WHERE klantnummer=5012.

    LOL

  • L.Kok
    Elite members
    Ontvangen Reacties
    35
    Berichten
    1.117
    Filebase Entries
    1
    • 18 maart 2014 om 06:37
    • #12

    Het zit hem in de controle van je wachtwoord, de laatste if die je hebt staan voordat je de session gaat zetten.
    Naar mijn mening moet je deze query gebruiken:

    PHP
    $result = mysqli_query($con,"SELECT klantnummer,wachtwoord FROM customers WHERE klantnummer = '".$_POST['klant']."' AND wachtwoord = '".sha1($_POST['pass'])."'");

    Op voorwaarde dat het database veld voor wachtwoord, wachtwoord noemt.
    Ik zou tevens ook eens kijken naar het beveiligen van je query.

    Bovenstaande query kan je gewoon een count rows op los laten om te kijken of er een match is in de database.

    Met vriendelijke groet,

    L.Kok
    YoungVision

  • T.Nijborg
    Hoofd Moderators
    Ontvangen Reacties
    31
    Berichten
    504
    • 18 maart 2014 om 18:26
    • #13
    Citaat van L.Kok

    Het zit hem in de controle van je wachtwoord, de laatste if die je hebt staan voordat je de session gaat zetten.
    Naar mijn mening moet je deze query gebruiken:

    PHP
    $result = mysqli_query($con,"SELECT klantnummer,wachtwoord FROM customers WHERE klantnummer = '".$_POST['klant']."' AND wachtwoord = '".sha1($_POST['pass'])."'");

    Op voorwaarde dat het database veld voor wachtwoord, wachtwoord noemt.
    Ik zou tevens ook eens kijken naar het beveiligen van je query.

    Bovenstaande query kan je gewoon een count rows op los laten om te kijken of er een match is in de database.


    Beveilliging doe ik zodra het werkt, ik heb nu dit:

    PHP
    // SYSTEEM INLOGGEN BEGIN
    
    
    //Form openen
    if(isset($_POST['login'])){
    
    
    // Klantnummer En wachtwoord
    $klantnummer = $_POST['klant'];
    $wachtwoord = $_POST['pass'];
    //Pass en klant beveilligen
    $pass = sha1($wachtwoord);
    
    
    //database
    $gegevens = "SELECT klantnummer, wachtwoord FROM customers WHERE klantnummer='$klantnummer' 
    AND wachtwoord='$pass'";
    
    
    
    
    $result = mysqli_query($con,$gegevens)or die(mysqli_error());
    $num_row = mysqli_num_rows($result);
    $row=mysqli_fetch_array($result);
    echo $num_row;
    if( $num_row ==1 )
         {
    //Sessie zetten
    $_SESSION['user'] = $klantnummer;
    header('Refresh: 5; url=index.php');
      }
      else
         {
     $fout = $lang_fout;
      }
    
    
    //Form sluiten
    }
    
    
    
    
    // SYSTEEM INLOGGEN EINDE
    Toon Meer


    Het zal wel aan mij liggen maar hij leest geen rows, ook al kloppen de gegevens.

    PHP, JAVA, C#, JAVASCRIPT, HTML(5), CSS(3) developer.
    Vragen?! Stuur me gerust een prive bericht :) !

    Bewerkt 2 keer, laatst door mentimjojo (18 maart 2014 om 19:02).

  • bramieboy100
    Intermediate
    Berichten
    433
    • 18 maart 2014 om 20:41
    • #14

    Dan moet je kijken in je database, komen de waarden overeen?

    LOL

  • T.Nijborg
    Hoofd Moderators
    Ontvangen Reacties
    31
    Berichten
    504
    • 22 maart 2014 om 14:05
    • #15

    Nu heb ik het probleem gefixed qua inloggen etc. En een nieuw topic voor dit probleem vind ik onnodig, ik krijg als je je gegevens wilt aanpassen deze error:


    PHP
    Warning: Cannot modify header information - headers already sent by (output started at /home/tnijborg/domains/developers4you.nl/public_html/customers/index.php:25) in /home/tnijborg/domains/developers4you.nl/public_html/customers/pages/account.php on line 29

    En daarbij gaat het op deze 2 stukjes code:

    Lijn 25 uit index:

    PHP
    <?php echo $menulinks; ?>

    Lijn 29 uit account.php

    PHP
    header('Refresh: 0; url=index.php?page=account&goed=1&security=' . $sessieids . '&save=' . $securityid);

    Maar in menulinks, althans die echo, staat niks met header etc, dus waar komt deze fout vandaan...

    PHP, JAVA, C#, JAVASCRIPT, HTML(5), CSS(3) developer.
    Vragen?! Stuur me gerust een prive bericht :) !

  • Victor
    Master
    Ontvangen Reacties
    102
    Berichten
    1.680
    • 22 maart 2014 om 14:34
    • #16

    Staat er in $menulinks ook niet iets als session_start(); ?

    Met vriendelijke groet,

    Victor
    Beheerder ICTscripters

  • bramieboy100
    Intermediate
    Berichten
    433
    • 22 maart 2014 om 15:17
    • #17

    Er is dan meestal een probleem met ob_start. Probeer deze te verwijderen.

    LOL

  • T.Nijborg
    Hoofd Moderators
    Ontvangen Reacties
    31
    Berichten
    504
    • 22 maart 2014 om 15:21
    • #18

    Ik heb nergens ob_start staan, en session_start heb ik 1 keer, puur in config.php, voor de inlog, etc

    PHP, JAVA, C#, JAVASCRIPT, HTML(5), CSS(3) developer.
    Vragen?! Stuur me gerust een prive bericht :) !

  • bramieboy100
    Intermediate
    Berichten
    433
    • 22 maart 2014 om 15:47
    • #19

    Probeer dan eens om juist wel ob_start() in je config in te voegen.

    LOL

  • T.Nijborg
    Hoofd Moderators
    Ontvangen Reacties
    31
    Berichten
    504
    • 22 maart 2014 om 15:53
    • #20

    Okee het werkt nu :D Dankje.

    Mag ik vragen wat ob_start() doet?

    PHP, JAVA, C#, JAVASCRIPT, HTML(5), CSS(3) developer.
    Vragen?! Stuur me gerust een prive bericht :) !

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