Wachtwoord hashen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

C# .NET Developer

Dit ga je doen Ontwikkelen van de Back-end in .NET6 / C# en WebAPI (Focus);) Ontwikkelen van de Front-End in Nodje.js en Angular (secundair); Ontwikkelen in Blazor; Opstellen van een technisch ontwerp; Testen, documenteren en implementeren van de nieuwe applicatie; Verzorgen van de nazorg, na de implementatie. Hier ga je werken Binnen deze organisatie werken duizenden mensen binnen allerlei verschillende disciplines. Tevens hebben zij veel specialiteiten in huis, waaronder ook .Net Developers. Ter uitbreiding van een nieuw team en ter ondersteuning van het project zijn ze opzoek naar een nieuwe collega voor het team. Als C#.NET Developer zal jij je

Bekijk vacature »

Traineeship Full Stack Java developer

Dit ga je doen Start jij op 7 augustus bij de Experis Academy dan kickstart jij jouw IT-carrière! We leiden je op tot een gewilde Full Stack Java Developer met alle kennis en vaardigheden die nodig zijn om de arbeidsmarkt te betreden. Wat kun je verwachten, hoe zit een dag in het leven van een Trainee eruit? Periode 1 Als Full Stack Java Developer Trainee volg je vanuit huis een op maat gemaakte onlinetraining die in het Engels wordt gegeven. De tijd die je kwijt bent aan het volgen van de training kun je vergelijken met een fulltime werkweek. In

Bekijk vacature »

.NET developer

Functie Als junior .NET Developer start jij in een team met 15 developers. In het team is er genoeg senioriteit om ervoor te zorgen dat jij de juiste begeleiding krijgt. Jij begint als eerst alle software pakketten en processen eigen te maken. Vervolgens ga jij deze software programmeren, onderhouden en testen. Ook ga jij research doen naar nieuwe mogelijkheden en zoek jij uit hoe je dit kan implementeren. Jullie werken intern op project basis en afhankelijk van het project werken jullie wel of niet iedere ochtend met een standup. 50% van jullie werkzaamheden is maatwerk en de overige 50% is

Bekijk vacature »

.Net ontwikkelaar - Het schoolsysteem verbeteren!

Bedrijfsomschrijving Onze klant is een prettige en kleinschalige organisatie waar hard gewerkt wordt om het onderwijs te verbeteren. Daarom werken ze aan complexe om administratieve, financiële en facilitaire processen te versnellen en te verbeteren. Dit doen ze vanuit een platte organisatie voor klanten die door geheel Nederland verspreid zitten, hier horen vanzelfsprekend een aantal aansprekende HBO scholen en universiteiten toe. Functieomschrijving Je komt terecht in een organisatie waar op dit moment 2 scrumteams werken. Jij zal als .Net developer binnen 1 van deze scrumteams functioneren, iedereen binnen dit team heeft zijn/haar eigen expertise waardoor er met verschillende invalshoeken aan een

Bekijk vacature »

Front end developer React

Functie Wij zijn van origine een wordpress bureau, maar sinds 2006 zijn wij dit wel redelijk ontgroeid. Naar mate de jaren verstreken zijn we gegroeid in omvang, maar ook in de complexiteit van opdrachten waarin wij onze klanten kunnen bedienen. Momenteel bestaat onze organisatie uit 4 front end developers, 12 back end developer 3 projectmanagers en een 2 koppig management. Wij zijn een hele informele, bijna familiaire organisatie. Geen strak pak of overhemd, nee gewoon dragen waar jij je prettig bij voelt. De gemiddelde leeftijd ligt tussen de 25 en 30 en wij doen er veel aan om onze hechte

Bekijk vacature »

Medior C# Developer

Samen met het development team zorg je ervoor dat alle systemen achter de schermen vlekkeloos werken. Wat doe je als Medior C# Developer bij Coolblue? Als C# developer doe je regelmatig mee aan brainstormsessies over user experience, data en task flow met de UX Designer, Product Owner en Data Scientist in je team. Daarnaast schrijf je op zichzelf staande, consistente en testbare code die goed onderhoudbaar en toekomstbestendig is. Ook C# Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om te doen Werken met verschillende soorten data-opslag, zoals Oracle of AWS. Problemen oplossen

Bekijk vacature »

Software Developer

Dit ga je doen Ontwikkelen aan de software dat beschikbaar is op de substations; Ontwikkelen in C++, C, Python en JavaScript. Daarnaast op een Embedded Linux omgeving, opgebouwd met containers en DevOps; Meewerken aan cyber security (OWASP); Uitvoeren/bouwen van geautomatiseerde testen in samenwerking met de Quality Specialist; Vertalen van wensen van de klanten/business naar werkbare/duurzame oplossingen. Hier ga je werken Als Software Ontwikkelaar kom je te werken bij een organisatie gericht op de (internationale) energiemarkt, waar wordt gewerkt voor het verwerven en verwerken van realtime, high quality data. Er wordt gewerkt vanuit het hart van de substations en direct voor

Bekijk vacature »

Back-end Software Developer

Functie omschrijving Ben jij op zoek naar een uitdagende development functie bij een klein gespecialiseerd softwarebedrijf? Wil jij graag hybride werken (combi tussen thuis + kantoor), loop jij warm voor maatwerk software en voel jij je prettig in een informele cultuur? Zoek dan niet verder! Reageer direct! Voor een gewilde werkgever in omgeving Tilburg zoeken wij een back-end software developer met een aantal jaar werkervaring. Je gaat werken voor een klein softwarebedrijf dat gespecialiseerd is in de ontwikkeling van integratiesoftware. Jouw werkzaamheden zien er als volgt uit: In een klein team met 4 ontwikkelaars houd jij je bezig met afwisselende

Bekijk vacature »

Senior .NET developer

Klaar voor een nieuwe uitdaging? Welke technologieën gaan schuil achter de dagelijkse energievoorziening? Als senior .NET developer bij Kenter maak jij samen met je team het verschil, zowel voor de interne organisatie als voor eindklanten. Samen bouwen jullie aan innovatieve dienstverlening met behulp van de nieuwste technologieën en tools. Het is een functie met veel vrijheid, goede arbeidsvoorwaarden én je draagt jouw steentje bij aan de energietransitie. Klinkt dit als iets voor jou? Lees dan verder of solliciteer direct! Wat ga je doen als senior .NET developer? Als senior .NET developer bij Kenter (onderdeel van Alliander) ben je van onschatbare

Bekijk vacature »

Front End Ontwikkelaar (React)

In het kort Als front end developer ga je aan de slag met maatwerkprojecten voor onze klanten. Denk bijvoorbeeld aan het toevoegen van een machine aan een database of het corrigeren van formulieren voor ingestuurde orders. Voorbeeld van zo’n project is Smart Link. De projecten waar je op ingezet kunt worden liggen binnen het technische domein waar jij als front end developer een grote rol speelt om samen met je back end collega’s de juiste oplossingen te leveren. please note that this particular role requires fluent Dutch language skills. Dit vind je leuk om te doen Het omzetten van designs

Bekijk vacature »

Full stack developer Python, React

Functie Jij als full stack developer komt binnen onze Technology afdeling te werken. Deze bestaat momenteel uit 15 man. De stack waarmee wij werken is voornamelijk Python, Javascript, React en GraphQL. Binnen deze afdeling wordt er met multidisciplinaire teams gewerkt aan verschillende projecten. Projecten duren vaak langer dan 3 maanden en je bent van begin tot eind vaak betrokken. Naast dat je als full stack ontwikkelaar aan de slag gaat ben je ook Consultant. Dit betekent dat je ook klantcontact hebt in je rol en werkshops geeft. De verhouding tussen deze werkzaamheden zijn ongeveer 70% development en 30% consultancy. Een

Bekijk vacature »

Software Developer C++ en Perl

Ben je een slimme en enthousiaste universitair opgeleide bèta die graag bij een relatief klein softwarebedrijf wil werken waar de sfeer goed is en eigen inbreng gewaardeerd wordt? Wij, IntelliMagic in Leiden, ontwikkelen technisch hoogwaardige software op het gebied van IT infrastructuur performance analytics. Het type software zorgt voor intellectueel interessante uitdagingen. We ontwerpen de producten zelf en verkopen deze als off-the-shelf software aan grote bedrijven in Europa en de VS. Wij zoeken een ervaren C++ software engineer met kennis van Perl voor een van onze ontwikkelteams. Werkzaamheden Samen met de andere ontwikkelaars specificeren, ontwerpen en implementeren van nieuwe functionaliteit

Bekijk vacature »

Senior Software developer PHP

Functie Jij als senior PHP ontwikkelaar komt te werken in 1 van onze SCRUM teams. Momenteel werken er zo’n 30 developers binnen onze organisatie Jij gaat de brug zijn tussen het bouwen van verschillende functionaliteiten binnen onze applicaties en deze vervolgens te integreren in onze centrale hub. Je start je dag om 9 uur met een stand up en dan pak je je taken op voor de dag. Een greep van jouw taken zijn: – Het bedenken en uitbouwen van features binnen de verschillende applicaties – Onderhouden van CI/CD pipelines – Bezighouden met Security & Privacy Eisen • Minimaal 4

Bekijk vacature »

Delphi Programmeur

Functie omschrijving Onze opdrachtgever is gespecialiseerd in kantoor-bedrijfssoftware en zit gevestigd in omgeving Numansdorp. Als programmeur ben jij bij dit bedrijf met het volgende bezig; Je vertaalt technische en functionele ontwerpen naar kwalitatieve software. Je ontwikkelt, ontwerpt en test software. Je maakt daarbij veel gebruik met de volgende tools & technologieën: Delphi 10.3 (Rio), QuickReport 6. Je krijgt in deze rol veel vrijheid en verantwoordelijkheid. Je levert projecten van A - Z op, en werkt daarbij projectmatig en gestructureerd. Bedrijfsprofiel Dit bedrijf richt zich op maatwerk software oplossingen. Deze software oplossingen worden ingezet in de financiële branche. Het betreft een

Bekijk vacature »

Java Developer bij een jonge groeiende organisatie

Bedrijfsomschrijving Vind jij het als Java developer ook zo belangrijk dat een bedrijf je de ruimte en tijd geeft voor persoonlijke ontwikkeling? Dan zit je hier helemaal goed. Deze jonge organisatie is opgericht in 2018 en is ondertussen uitgegroeid tot een club van ongeveer 30 medewerkers. Het gaat hier om een echte Java club, die vrijheid en verantwoordelijkheid erg belangrijk vinden. Het bedrijf heeft een informele sfeer en de teams zijn erg hecht met elkaar. Ze delen graag de kennis en ervaringen met anderen, maar vinden andermans mening ook zeer belangrijk. De organisatie zet zich in voor ontwikkeling en besteed

Bekijk vacature »

Pagina: « vorige 1 2 3 4 volgende »

- SanThe -

- SanThe -

09/03/2015 20:24:52
Quote Anchor link
Na header() zal het script niet direct stoppen.
Om dat te forceren gebruik je exit().
 
PHP hulp

PHP hulp

28/03/2024 16:00:49
 
Ronnie Peeters

Ronnie Peeters

09/03/2015 21:34:25
Quote Anchor link
Sorry, mijn veld admin staat voor 1 user op "yes" in de database (varchar):
Ik kan nu met geen enkele gebruiker meer aanloggen.
Met verkeerde username => wit scherm
Met verkeerd wachtwoord => incorrect password (lijkt me dus goed)
Met juiste credentials + admin op yes => incorrect username
Met juiste crendentials zonder admin op yes => acces denied


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?php
    include("password.php");
    session_start();
    $username = mysql_real_escape_string($_POST['username']);
    $password = mysql_real_escape_string($_POST['password']);
    $bool = true;

    mysql_connect("localhost", "root", "usbw") or die (mysql_error()); //Connectie naar de server
    mysql_select_db("first_db") or die ("Cannot connect to database"); //Connect naar de database
    $query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
    $exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
    $table_users = "";
    $table_password = "";
    if($exists > 0) //Als er geen resultaten zijn of geen bestaande username is
    {
       while($row = mysql_fetch_array($query)) // Toont alle rijen van de query
       {
          $table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
          $table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
            $admin = $row['admin'];
      }

      if ($admin == 'yes') {
       if(($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes'))// checked of er een match is
       {
          
            if ($password == $table_password) {
                $_SESSION['user'] = $username;
                $_SESSION['admin'] = $admin;
                header("location: home.php");

        
      
         }
else {
                print '<script>alert("Incorrect username!");</script>';
                print '<script>window.location.assign("login.php");</script>';
            }
        }
else {
            print '<script>alert("Incorrect Password!");</script>';
            print '<script>window.location.assign("login.php");</script>';
        }
    }
else {
        print '<script>alert("Acces denied!");</script>';
        print '<script>window.location.assign("login.php");</script>';
    }
}

?>
 
- Ariën  -
Beheerder

- Ariën -

09/03/2015 21:44:29
Quote Anchor link
Het is al eerder gezegd, maar je mysql_real_escape_string moet je NA je databaseconnectie plaatsen. Verder kan je ook prima die functie direct in de query gebruiken, zoals in mijn voorbeeld.

Verder kan je ook prima met booleans (true/false; 1/0) werken in je database om aan te geven of iemand admin is, of niet. Gewoon een 0 (niet) of 1 (wel) gebruiken.

Verder raad ik het niet aan om de status van een admin in de sessie op te slaan. Mocht je iemand ontheffen uit zijn adminfunctie, dan zal hij eerst zijn browser af moeten sluiten. het enige wat in een sessie hoort is een status of iemand ingelogd is als boolean, en zijn userID.
Gewijzigd op 09/03/2015 22:33:21 door - Ariën -
 
Frank Nietbelangrijk

Frank Nietbelangrijk

09/03/2015 22:27:06
Quote Anchor link
Aar C op 09/03/2015 21:44:29:
het enige wat in een sessie hoort is een status of iemand ingelogd is als boolean.


Uhm Aar,

hoe weten we dan WIE er ingelogd is? Lijkt mij dat je toch ook een user_id opslaat in de sessie? Of als alternatief kan ik nog verzinnen dat je het sessie_id opslaat in de database in de users tabel.
 
- Ariën  -
Beheerder

- Ariën -

09/03/2015 22:32:38
Quote Anchor link
Ja, en een userID hoort erin, die was ik vergeten.
 
Ronnie Peeters

Ronnie Peeters

10/03/2015 09:21:16
Quote Anchor link
Iemand een idee waarom dat script niet werkt?
Sorry, mijn veld admin staat voor 1 user op "yes" in de database (varchar):
Ik kan nu met geen enkele gebruiker meer aanloggen.
Met verkeerde username => wit scherm
Met verkeerd wachtwoord => incorrect password (lijkt me dus goed)
Met juiste credentials + admin op yes => incorrect username
Met juiste crendentials zonder admin op yes => acces denied





Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?php
    include("password.php");
    session_start();
    $username = mysql_real_escape_string($_POST['username']);
    $password = mysql_real_escape_string($_POST['password']);
    $bool = true;

    mysql_connect("localhost", "root", "usbw") or die (mysql_error()); //Connectie naar de server
    mysql_select_db("first_db") or die ("Cannot connect to database"); //Connect naar de database
    $query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
    $exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
    $table_users = "";
    $table_password = "";
    if($exists > 0) //Als er geen resultaten zijn of geen bestaande username is
    {
       while($row = mysql_fetch_array($query)) // Toont alle rijen van de query
       {
          $table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
          $table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
            $admin = $row['admin'];
      }

      if ($admin == 'yes') {
       if(($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes'))// checked of er een match is
       {
          
            if ($password == $table_password) {
                $_SESSION['user'] = $username;
                $_SESSION['admin'] = $admin;
                header("location: home.php");

        
      
         }
else {
                print '<script>alert("Incorrect username!");</script>';
                print '<script>window.location.assign("login.php");</script>';
            }
        }
else {
            print '<script>alert("Incorrect Password!");</script>';
            print '<script>window.location.assign("login.php");</script>';
        }
    }
else {
        print '<script>alert("Acces denied!");</script>';
        print '<script>window.location.assign("login.php");</script>';
    }
}

?>
 
Ivo P

Ivo P

10/03/2015 09:27:48
Quote Anchor link
if(($username == $table_users)

de kans dat de username niet gelijk is aan $table_users is niet zo heel groot: gezien je dit in de query al afdwingt.
Hooguit gaat hier nog wat mis mbt mysql_real_escape_string.


password_verify($password, $table_password)

geen idee wat dit doet? kijken of gehast password in database gelijk is aan de hash van het ingevoerde password (na mishandeling door mysql_real_escape_string) ?

vreemd, want daarna volgt nog een keer
if ($password == $table_password) {

dus we vallen terug op de niet gehashte versie van $password en vergelijken nog een keer.



---
doe je trouwens iets met de aanwijzingen of negeer je alles wat niet direct tot je oplossing leidt?
ik bedoel opmerkingen over eerst connecten, dan escapen, etc.
 
Frank Nietbelangrijk

Frank Nietbelangrijk

10/03/2015 09:28:35
Quote Anchor link
Zorg eerst eens dat je foutmeldingen gaat krijgen. Zet onderstaande twee regels bovenaan in je script.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
?>


Daarnaast heb jij wel de laatste reactie van Aar gelezen?
a) mysql_connect
b) mysql_real_escape_string

In die volgorde en niet andersom.
Laat maar weten welke foutmeldingen je krijgt.
 
Ronnie Peeters

Ronnie Peeters

10/03/2015 10:03:38
Quote Anchor link
Sorry en bedankt voor de reacties. Ik heb de mysql_real_escape_string achter mijn connect gestoken.


error
Notice: Undefined index: username in D:\USBWebserver v8.6\root\restaurant\checklogin.php on line 10

Notice: Undefined index: password in D:\USBWebserver v8.6\root\restaurant\checklogin.php on line 11



Code

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<?php
    include("password.php");
    session_start();

    $bool = true;

    mysql_connect("localhost", "root", "usbw") or die (mysql_error()); //Connectie naar de server
    mysql_select_db("first_db") or die ("Cannot connect to database"); //Connect naar de database
    
    $username = mysql_real_escape_string($_POST['username']);
    $password = mysql_real_escape_string($_POST['password']);
    $query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
    $exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
    $table_users = "";
    $table_password = "";
    
    
    
    if($exists > 0) //Als er geen resultaten zijn of geen bestaande username is
    {
       while($row = mysql_fetch_array($query)) // Toont alle rijen van de query
       {
          $table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
          $table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
            $admin = $row['admin'];
      }

      if ($admin == 'yes') {
       if(($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes'))// checked of er een match is
       {
          
            if ($password == $table_password) {
                $_SESSION['user'] = $username;
                $_SESSION['admin'] = $admin;
                header("location: home.php");

        
      
         }
else {
                print '<script>alert("Incorrect username!");</script>';
                print '<script>window.location.assign("login.php");</script>';
            }
        }
else {
            print '<script>alert("Incorrect Password!");</script>';
            print '<script>window.location.assign("login.php");</script>';
        }
    }
else {
        print '<script>alert("Acces denied!");</script>';
        print '<script>window.location.assign("login.php");</script>';
    }
}

?>



Login pagina is niet meer dan dit:

<html>
<body>
<a href="index.php">Terug naar home </a><br/><br/>
<form action="checklogin.php" method="POST">
Vul gebruikersnaam in: <input type="text" name="username" required="required" /> <br/>
Vul wachtwoord in: <input type="password" name="password" required="required" /> <br/>
<input type="submit" value="Login"/>
</form>
</body>
</html>
 
- Ariën  -
Beheerder

- Ariën -

10/03/2015 10:09:49
Quote Anchor link
$_POST['username'] en $_POST['password'] zijn nog leeg.

Daarom raad ik aan om eerst te controleren of er gepost is:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
if($_SERVER['REQUEST_METHOD']=="POST") {
    // er is een formulier verstuurd. Plaats hier de afhandeling, zoals validatie, databasecontrole, sessies aanmaken etc...
} else {
    // toon hier eventueel je formulier. Deze else is niet verplicht.
}
?>
 
Frank Nietbelangrijk

Frank Nietbelangrijk

10/03/2015 10:14:55
Quote Anchor link
Kijk. de twee waarschuwingen die je krijgt zijn omdat de $_POST['?'] variabelen niet altijd beschikbaar zijn.
Je moet daarom eerst isset() gebruiken om te controleren of ze aanwezig zijn

Daarnaast in het algemeen controleer je of een formulier verstuurd is door het volgende te gebruiken

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST')
{

    // ahhh de gebruiker heeft waarschijnlijk een gebruikersnaam en wachtwoord ingevuld en op Login geklikt
}
?>


Waar ik persoonlijk aan hekel is waarom je het formulier naar een ander PHP bestand laat sturen (checklogin.php)
Waarom laat je het attribuut action="" niet gewoon leeg zodat je op dezelfde pagina blijft? Je kunt dan namelijk direct het formulier nog een keer voorschotelen (met een foutmelding) als een gebruiker niet de goede combinatie username/password heeft ingevuld.

Eigenlijk komt het neer op mijn voorbeeld in dit topic: http://www.phphulp.nl/php/forum/topic/controle-email-adress/97365/

Kortom zorg eerst even dat je het formulier op de juiste wijze gaat afhandelen
 

10/03/2015 10:27:54
Quote Anchor link
Ik heb er altijd een hekel aan als PHP en html door elkaar staan.
Waarom doe je niet gewoon met Composer de bestanden binnehalen die je wilt zodat alles ook netjes te unittesten is.

Weg met procudurele PHP! En allemaal netjes OOP leren. Ookal ken je nog geen PHP, je hebt procedurele PHP niet nodig dat kan je ook leren terwijl je PHP OOP leert.

Wie is ervoor!
 
- Ariën  -
Beheerder

- Ariën -

10/03/2015 10:32:01
Quote Anchor link
Ik, maar je kan het niemand natuurlijk verplichten. OOP is een behoorlijke leercurve en verder moet iemand er wel voor openstaan.

Iemand die zelden wat met PHP doet, en zijn tijd liever besteed aan andere zaken heeft weinig aan OOP. Daarom mogen we blij zijn dat PHP zowel procedureel als object-georienteerd kan, tot in tegenstelling van de meeste andere programmeertalen.
 
Frank Nietbelangrijk

Frank Nietbelangrijk

10/03/2015 10:42:27
Quote Anchor link
Ik snap Rickert ook wel.. Als je het OOP eenmaal in de vingers hebt dan zie de voordelen en wil je niet meer zonder.
Aan de andere kant is het absoluut geen vereiste om een correct werkend PHP script te verkrijgen. Je kunt met procedureel hetzelfde eindresultaat bereiken. Voor de beginners vind ik het persoonlijk belangrijker dat ze de logica gaan snappen van een aantal zaken die hier bijna dagelijks aan bod komen.
 
Ronnie Peeters

Ronnie Peeters

10/03/2015 10:49:51
Quote Anchor link
Ja om OO te leren zal ik nu geen tijd voor hebben.

Ik heb even gecheckt of die post iets verstuurd. Nu daar zit blijkbaar het probleem want er komt niets binnen.
Nochtans heeft dit script altijd gewerkt vooraleer ik begon met die hash en admin levels. Ja ik snap dat je de code ook in login.php zou kunnen maken, maar zou het nu graag zo afwerken.

Iemand een idee waarom er niets meer doorkomt?

Dit is mijn checklogin.php

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
    include("password.php");
    session_start();

    $bool = true;
    
    
    if($_SERVER['REQUEST_METHOD']=="POST")
    {

        
            print '<script>alert("niets verzonden!");</script>';
            print '<script>window.location.assign("login.php");</script>';
    

    mysql_connect("localhost", "root", "usbw") or die (mysql_error()); //Connectie naar de server
    mysql_select_db("first_db") or die ("Cannot connect to database"); //Connect naar de database
    
    $username = mysql_real_escape_string($_POST['username']);
    $password = mysql_real_escape_string($_POST['password']);
    $query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
    $exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
    $table_users = "";
    $table_password = "";
    
    
    
    if($exists > 0) //Als er geen resultaten zijn of geen bestaande username is
    {
       while($row = mysql_fetch_array($query)) // Toont alle rijen van de query
       {
          $table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
          $table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
            $admin = $row['admin'];
      }

      if ($admin == 'yes') {
       if(($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes'))// checked of er een match is
       {
          
            if ($password == $table_password) {
                $_SESSION['user'] = $username;
                $_SESSION['admin'] = $admin;
                header("location: home.php");

        
      
         }
else {
                print '<script>alert("Incorrect username!");</script>';
                print '<script>window.location.assign("login.php");</script>';
            }
        }
else {
            print '<script>alert("Incorrect Password!");</script>';
            print '<script>window.location.assign("login.php");</script>';
        }
    }
else {
        print '<script>alert("Acces denied!");</script>';
        print '<script>window.location.assign("login.php");</script>';
    }
}
    }

    else
    {
        print '<script>alert("niets verzonden!");</script>';
            print '<script>window.location.assign("login.php");</script>';
        
    }

?>



Dit is mijn login.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<html>
    <head>
        <title>Mijn restaurant</title>
    </head>
    <body>
        <h2>Login Pagina</h2>
        <a href="index.php">Terug naar home </a><br/><br/>
        <form action="checklogin.php" method="POST">
           Vul gebruikersnaam in: <input type="text" name="username" required="required" /> <br/>
           Vul wachtwoord in: <input type="password" name="password" required="required" /> <br/>
           <input type="submit" value="Login"/>
        </form>
    </body>
</html>

Aar C:
Gelieve in het vervolg bij code de [code][/code]-tags gebruiken.
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 10/03/2015 11:13:45 door - Ariën -
 
- SanThe -

- SanThe -

10/03/2015 11:12:25
Quote Anchor link
Op regel 11 is er juist wel iets verzonden.
 
Ivo P

Ivo P

10/03/2015 11:30:20
Quote Anchor link
regels 11, 12 eruit.

regel 19 : $password = $_POST['password'];
(liever nog in de rest van je script $_POST['password'] gebruiken, maar ik verwacht dat je dan nog grotere puinhoop maakt.

op regel 38

var_dump($password);
var_dump($table_password);

Toevoeging op 10/03/2015 11:31:30:

en die dump mag evt ook tussen regel 34 en 35, mocht het niets opleveren.
 
Ronnie Peeters

Ronnie Peeters

10/03/2015 11:59:31
Quote Anchor link
Thanks,

Nu krijg ik de volgende melding

Parse error: syntax error, unexpected 'else' (T_ELSE) in D:\USBWebserver v8.6\root\restaurant\checklogin.php on line 53





Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
<?php
    include("password.php");
    session_start();

    $bool = true;
    
    
    if($_SERVER['REQUEST_METHOD']=="POST")
    {

        
    

    mysql_connect("localhost", "root", "usbw") or die (mysql_error()); //Connectie naar de server
    mysql_select_db("first_db") or die ("Cannot connect to database"); //Connect naar de database
    
    $username = mysql_real_escape_string($_POST['username']);
    $password = $_POST['password'];
    $query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
    $exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
    $table_users = "";
    $table_password = "";
    
    
    
    if($exists > 0) //Als er geen resultaten zijn of geen bestaande username is
    {
       while($row = mysql_fetch_array($query)) // Toont alle rijen van de query
       {
          $table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
          $table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
            $admin = $row['admin'];
      }

      if ($admin == 'yes') {
       if(($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes'))// checked of er een match is
       var_dump($password);
       var_dump($table_password);    
      
       {

          
            if ($password == $table_password) {
                var_dump($password);
                var_dump($table_password);                
                $_SESSION['user'] = $username;
                $_SESSION['admin'] = $admin;
                header("location: home.php");

        
      
         }
else {
                print '<script>alert("Incorrect username!");</script>';
                print '<script>window.location.assign("login.php");</script>';
            }
        }
else {
            print '<script>alert("Incorrect Password!");</script>';
            print '<script>window.location.assign("login.php");</script>';
        }
    }
else {
        print '<script>alert("Acces denied!");</script>';
        print '<script>window.location.assign("login.php");</script>';
    }
}
    }

    else
    {
        print '<script>alert("niets verzonden!");</script>';
            print '<script>window.location.assign("login.php");</script>';
        
    }

?>
 
Frank Nietbelangrijk

Frank Nietbelangrijk

10/03/2015 12:01:51
Quote Anchor link
even je accolades nakijken. Een goede PHP editor helpt ook
 
- Ariën  -
Beheerder

- Ariën -

10/03/2015 12:04:23
Quote Anchor link
En fatosnelijk inspringen kan ook geen kwaad:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?php

include("password.php");
session_start();

$bool = true;


if ($_SERVER['REQUEST_METHOD'] == "POST") {



    mysql_connect("localhost", "root", "usbw") or die(mysql_error()); //Connectie naar de server
    mysql_select_db("first_db") or die("Cannot connect to database"); //Connect naar de database

    $username = mysql_real_escape_string($_POST['username']);
    $password = $_POST['password'];
    $query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
    $exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
    $table_users = "";
    $table_password = "";



    if ($exists > 0) { //Als er geen resultaten zijn of geen bestaande username is
    while ($row = mysql_fetch_array($query)) { // Toont alle rijen van de query
        $table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
        $table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
        $admin = $row['admin'];
    }

    if ($admin == 'yes') {
        if (($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes')) { // checked of er een match is
        var_dump($password);
        var_dump($table_password);

        if ($password == $table_password) {
            var_dump($password);
            var_dump($table_password);
            $_SESSION['user'] = $username;
            $_SESSION['admin'] = $admin;
            header("location: home.php");
        }
else {
            print '<script>alert("Incorrect username!");</script>';
            print '<script>window.location.assign("login.php");</script>';
        }
        }
else {
        print '<script>alert("Incorrect Password!");</script>';
        print '<script>window.location.assign("login.php");</script>';
        }
    }
else {
        print '<script>alert("Acces denied!");</script>';
        print '<script>window.location.assign("login.php");</script>';
    }
    }
}
else {
    print '<script>alert("niets verzonden!");</script>';
    print '<script>window.location.assign("login.php");</script>';
}

?>


De fout was dat je na je if op lijn 34 geen { had staan, en die op een losse plek twee regels verder had staan.
Gewijzigd op 10/03/2015 12:05:07 door - Ariën -
 

Pagina: « vorige 1 2 3 4 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.