• Hey,


    Ik zie het probleem niet,
    Als ik of andere probeer inteloggen op mijn website wordt ik meteen weer terug gestuurt naar home, en doe ik het daarna nog een keer werkt het wel?
    Wat is precies het probleem ik zie het niet,
    Hier stuk code van melding gelukt inloggen:

    PHP
    if($checkFetch['pass'] == mysql_real_escape_string(md5($_POST['pass'])))
    				{
    					session_start();
    					$_SESSION['inlog'] = mysql_real_escape_string($_POST['username']);
    					$_SESSION['ingelogd'] = TRUE; 
    					mysql_query("UPDATE `leden` SET IP='". $_SERVER['REMOTE_ADDR'] ."' WHERE username='". $checkFetch['username'] ."'");
    					header("Location: http://www.******.nl/ingelogd");
    				}
  • session_start(); als eerste regel in het script zetten en misschien best header() vervangen met javascript window.location =, anders ga je ooit nog is een error krijgen, voor de rest zou ik niet meteen kunnen zien wat er fout aan is

  • Trouwens na je header Location replace zou ik voor de veiligheid exit(); erachter zetten. Je kunt namelijk Redirects blokkeren (ookal zijn het headers in php). Dit wordt vaak gebruikt door hackers die gaan bruteforcen.

    Kast: HAF922 | CPU: I7-930 @ 4.0GHz | CPU Cooler: Noctua NH-D14 | HDD0: Crucial M4 128GB, HDD1: Kingston SSD 64GB, HDD2/3: WD Black & Green 1TB, HDD4: Seagate 1.5TB | Mem: Kingston HyperX 12GB @ 1600MHz | Graphics: Crossfire HD6970 | Res: 5760x1080

  • heb nog steeds het probleem:
    Hier mijn volledige script:


  • Probeer zo eens.

  • Even een tip:

    PHP
    mysql_real_escape_string(md5($_POST['pass']))


    kan ook korter naar


    PHP
    md5($_POST['pass'])


    Als je dit uiteindelijk bij veel dingen doet kan je website trager worden. Dus die real escape kun je weglaten in principe. Onnodig veel code in je script.

    Kast: HAF922 | CPU: I7-930 @ 4.0GHz | CPU Cooler: Noctua NH-D14 | HDD0: Crucial M4 128GB, HDD1: Kingston SSD 64GB, HDD2/3: WD Black & Green 1TB, HDD4: Seagate 1.5TB | Mem: Kingston HyperX 12GB @ 1600MHz | Graphics: Crossfire HD6970 | Res: 5760x1080

  • Citaat van glammiiee

    Maar wel een stuk veileger;)


    Er is niks veiliger aan of je er nou mysql_real_escape omheen doet of niet. Dat stukje is gewoon nutteloos. Het haalt niks uit. Immers wordt de string voordat er een real escape overheen wordt gehaald al gehast naar een MD5. Dit zijn alleen maar letters en cijfers wat hier uit komt.


    Daarnaast hoeft een MRES helemaal niet in een IF statement. Een MRES is puur en alleen voor als je data in je database wilt plempen.

    Kast: HAF922 | CPU: I7-930 @ 4.0GHz | CPU Cooler: Noctua NH-D14 | HDD0: Crucial M4 128GB, HDD1: Kingston SSD 64GB, HDD2/3: WD Black & Green 1TB, HDD4: Seagate 1.5TB | Mem: Kingston HyperX 12GB @ 1600MHz | Graphics: Crossfire HD6970 | Res: 5760x1080

  • Paar dingen die ik zie:


    Alex:
    Allereerst is het niet vereist dat session_start bovenaanstaat. Zeker in dit geval. session_start heeft te maken met de headers. Dat heeft de header functie ook. Je kan geen headers versturen nadat er een output is geweest. Je moet er dus enkel voor zorgen dat dit gebeurd voor een output.


    Overigens is de javascript slecht, dit vanwege het allereerst trager is, omdat dat geladen moet worden en daarna nog uitgevoerd worden door de browser. Daarnaast hoeft niet iedereen zijn javascript aan te hebben.


    Luc, +1


    @Jop, +1


    Dan als tip voor Glammiiee:
    Voor zowel overzicht, debugging en kwaliteit van de code raad ik je aan om meer OO te gaan werken en op zijn minst functies te gaan schrijven.


    Verder zou ik nog eens naar de veiligheid van je login kijken ;)

Participate now!

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