abstract class/login probleem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Software Developer

Functie omschrijving In deze functie ga je aan de slag met het door ontwikkelen van de interne software. Zij maken gebruik van een CRM, wat door de hele organisatie gebruikt wordt. Andere taken: Je gaat het CRM-systeem door middel van PHP verder ontwikkelen; Verder bouw je verschillende API's en koppelingen tussen systemen; Ook ga je collega's ondersteunen bij vragen over de software en applicaties; Deelnemen aan overleggen met het development team; Bij interesse is er de mogelijkheid om junioren te gaan begeleiden. Bedrijfsprofiel Dit bedrijf is actief binnen de telecombranche. Het hoofdkantoor zit in regio van Den Bosch en er

Bekijk vacature »

Senior developer (PHP en VB.NET)

Functie De development afdeling bestaat uit 2 teams. Het productteam (10 developers) is verantwoordelijk voor verschillende applicaties met als doel om zoveel mogelijk te automatiseren en uit te werken tot standaard software. Met diverse Solutions Architecten en ervaren developers denken ze voortdurend mee met hun klanten en bouwen ze de basis van het uiteindelijke maatwerk dat wordt geleverd. Hiernaast hebben ze een maatwerk/projectteam. Dit team bestaat momenteel uit 8 developers (junior tot senior) en is verantwoordelijk voor het maatwerk in hun klantprojecten. Momenteel zijn ze op zoek naar een senior developer die aan de slag gaat in het productteam. Hierin

Bekijk vacature »

Product Developer (M/F), Fulltime 40 h/week

A global Plantbased revolution – that is our dream. Maximising the protein transition – that is our mission. Producing and developing sustainable and delicious products – that is what we do. Ojah is a fast growing company with a mission and has the ambition to be the world leader in its field. To support this growth we are hiring new colleagues. People that would like to make a difference and dare to dream big. With currently a 150 colleagues proudly working on our exceptional products. Working in a dynamic surrounding that runs full speed ahead. We need you! Product Developer

Bekijk vacature »

Back-end PHP Software Developer - Juniorfunctie

Functieomschrijving Wij zijn op zoek naar een PHP Software Developer om ons team te versterken en mee te werken aan de ontwikkeling van eigen IOT-oplossingen. In deze functie ben je verantwoordelijk voor het bouwen van webapplicaties, apps en dashboards voor het uitlezen en managen van sensoren in machines. Je werkt nauw samen met een team van ontwikkelaars en engineers om de beste software-oplossingen te creëren. Jouw werkzaamheden zien er als volgt uit: Je bent in deze rol verantwoordelijk voor het ontwerpen, ontwikkelen en onderhouden van webapplicaties en softwaretoepassingen voor in-house ontwikkelde IOT oplossingen. Je werkt aan complexe databases en back-end

Bekijk vacature »

Front end developer Zorgplatform

Functie Jij als Front end ontwikkelen zult komen te werken samen met 1 PHP ontwikkelaar, 1 Python developer en een flexibele schil aan ontwikkelaars . Samen ga je ervoor zorgen dat de huidige producten doorontwikkeld worden. De Marketplace is geschreven in PHP Laravel en in de front end React. De roostersoftware is ontwikkeld in Python in combinatie met React in de front end. Jij zult als Front ender dus voornamelijk bezig zijn met het verbeteren van onze interfaces op onze verschillende producten. Momenteel ligt de uitdaging in het feit dat de roostersoftware breder schaalbaar moet worden zodat het voor meerdere

Bekijk vacature »

Node.js developer

Functie Onder begeleiding van 3 accountmanagers waarvan er 1 binnen jouw expertise je aanspreekpunt zal zijn ga je aan de slag bij diverse opdrachtgevers. Hij of zij helpt je bij het vinden van een passende en uitdagende opdracht. Hierin houden ze uiteraard rekening met jouw situatie, ervaring en (technische) ambities. De opdrachten duren gemiddeld één tot 2 jaar. Hierdoor kun je je ook echt vastbijten in een project en als consultant impact maken. Naast de opdracht ben je regelmatig met je collega’s van de IT-afdeling om bijvoorbeeld onderlinge kennis te delen, of nieuwe trends te bespreken. Ook worden er regelmatig

Bekijk vacature »

C# .NET Software Ontwikkelaar

Functie omschrijving C# .NET Developer gezocht. Ben jij een full stack developer die op zoek is naar een nieuwe uitdaging binnen een leuk snel groeiend bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Developer met ervaring op het gebied van .NET die een organisatie in de regio Arnhem gaat versterken. Jij gaat je binnen dit bedrijf vooral bezighouden met het verbeteren van de functionaliteiten van hun dataplatform. Samen met andere ontwikkelaars denk je mee in oplossingsrichtingen, architectuur en nieuwe technologieën. Als C# .NET Developer binnen dit bedrijf houd je je niet alleen bezig met het verbeteren van

Bekijk vacature »

Airport Developer / System engineer

De functie Als onze nieuwe Airport Developer / System Engineer is je doel om uit nieuwbouw- en onderhoudsprojecten maximale waarde te creëren voor Schiphol Group en haar stakeholders. Vanuit je visie en expertise, maar ook (technologische) ontwikkelingen, wetgeving en beleid vertaal je klantwensen naar een gedegen programma van eisen. In de planontwikkelingsfase werk je nauw samen met Plan Ontwikkelaars om je kennis in te brengen ten behoeve van de kwaliteit van het investeringsvoorstel. Je overlegt met diverse partijen, stelt de vraag achter de vraag en verbindt zo de belangen van de luchthaven, proceseigenaar en asseteigenaar om tot een gedragen ontwikkelopgave

Bekijk vacature »

.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 »

Full Stack Java ontwikkelaar

Functieomschrijving Voor de politie zijn wij op zoek naar een Full stack Java ontwikkelaar. Als ervaren full stack Java ontwikkelaar binnen de gewenste deadlines meewerken aan de totstandkoming van de gewenste werkzaamheden. Taken Upgraden van GeoServer, SOLR, Oracle Spatial database, Tomcat Migreren Oracle Spatial naar PostgreSQL/PostGIS Migreren SOLR naar ElasticSearch Geografische gegevens op het interne netwerk beschikbaar maken Doorontwikkelen en actualiseren van de geografische services Het up to date brengen van de CI/CD pipeline, samen met medewerkers die verantwoordelijk zijn voor de CI/CD tooling Aanspreekbaar op de solution architectuur en stemt die met collega's in het cluster Geo De opdracht

Bekijk vacature »

Senior Developer ERP Dynamics 365

Samengevat: Deze werkgever is een softwarebedrijf. Ben jij een enthousiaste developer? Heb je ervaring met ERP of Dynamic 365 bussines central? Vaste baan: ERP Applicatie Specialist ERP MBO €3.600 - €5.200 Wij houden ons als bedrijf bezig met het leveren en implementeren van het Microsoft Dynamics pakket binnen verschillende industriële sectoren. Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Binnen ons open team is er een no-nonsense cultuur. Daarnaast is er veel onderling contact door de korte communicatielijnen. Het team werkt enthousiast samen om een

Bekijk vacature »

Back end developer PHP

Functie Met een complex en uitgebreid e-commerce platform, een eigen PIM-systeem en eigen scan applicatie – krijg jij dagelijks te zien hoe jouw werk gebruikt wordt door miljoenen gebruikers. En we staan qua development pas in de startblokken, aangezien er nog meerdere projecten op de plank liggen te wachten! Ons huidige development team bestaat uit 8 programmeurs. Er wordt dagelijks gereflecteerd op geschreven code, Scrum taken en kennisdelen onderling is een must. Onze voertaal binnen ons team is Engels, dit omdat wij twee internationale collega’s hebben. Ons huidige “IT Landschap” bestaat voornamelijk uit allerlei losse onderdelen die individueel, maar ook

Bekijk vacature »

Java Developer

Dit ga je doen Ontwerpen en bouwen van nieuwe functionaliteiten binnen de complexe omgeving; Proactief de processen kwalitatief en efficient inrichten; Opzetten van Unit Tests; Code Reviews; Regie nemen voor innovatieve projecten; Landschap beheren en de bijbehorende ketens hierbij in het oog houden. Hier ga je werken De organisatie is actief binnen de financiele branche en heeft een IT afdeling van circa 450 man. De organisatie voorziet de maatschappij binnen de financiele dienstverlening en is gedurende de jaren een onmisbare schakel geworden. Het is een high profile organisatie waar ze veel te maken hebben met veranderingen voortkomend uit maatschappelijke ontwikkelingen,

Bekijk vacature »

PHP Developer (junior functie)

Functie omschrijving Wij zijn op zoek naar een PHP Developer! Ben jij een starter en wil je werken bij een jong en leuk bedrijf? Lees dan verder! Wij zijn op zoek naar een PHP Developer binnen een junior functie. Binnen dit bedrijf gaat het om persoonlijke aandacht en ontwikkeling! Je komt te werken voor een leuk communicatiebureau die alles op het gebied van online en offline communicatie doet. Dit doen zij voor verschillende branches, waardoor je aan diverse soorten projecten mag werken, dit maakt deze baan erg leuk! Daarbij werk je aan een door hun zelf ontwikkeld framework welke goed

Bekijk vacature »

Freelance JAVA / C# Developer

Functieomschrijving Ben je een ervaren freelancer of werk je in loondienst en ben je toe aan een nieuwe uitdaging? Lees dan snel verder want wie weet is dit een leuke vacature voor jou! Voor een opdrachtgever in omgeving Delft zijn wij op zoek naar ervaren JAVA of C# Developers die graag op projectbasis willen werken. Je komt terecht bij een informele developers club die mooie projecten uitvoeren voor grote klanten. Het fijne van deze werkgever is dat je zelf mag beslissen hoe je te werk wilt gaan. Wil je als freelancer werken dan is dat OK. Wil je de zekerheid

Bekijk vacature »
Marlies Maalderink

Marlies Maalderink

29/01/2017 14:50:33
Quote Anchor link
Ik ben bezig met een (single user) login systeem voor een (eigen) website, deels omdat ik een login systeem nodig heb en deels bij wijze van oefening met OOP. Laat ik beginnen met zeggen dat ik hier echt nog een beginneling mee ben en echt uren aan het twijfelen geweest ben hoe ik dingen aan moet pakken en uiteindelijk gedaan heb wat mij het beste leek met de beperkte ervaring die ik heb.

Er is een inlogscherm waar je kunt inloggen en als je je wachtwoord niet meer weet een nieuw wachtwoord aan kunt vragen, en er is een admin gedeelte dat controleert of de gebruiker rechten heeft om op de pagina te zijn, en waar de gebruiker zijn gegevens kan aanpassen.

Nu heb ik vanaf het begin af aan mijn hoofd zitten breken over de inlog pagina, omdat er zoveel opties zijn.

er kunnen een session variabelen zijn die gecontroleerd moeten worden (als er al ingelogd is) en er kunnen post variabelen zijn die gecontroleerd moeten worden (als er ingelogd word).

In beide gevallen kunnen zich dan de volgende situaties voordoen:

- email adres komt niet in db voor
- wachtwoord komt niet overeen met wachtwoord in db
- beide komen overeen en de gebruiker is ingelogd

Nu heb ik een abstract class LoginHandler gemaakt die het email adres en het wachtwoord controleert, waarbij de child classes voor post en session variabelen bepalen wat de uiteindelijke actie is die ondernomen moet worden.

Maar, als iemand zijn wachtwoord vergeten is en op de link 'wachtwoord vergeten' klikt, heb ik weer een deel van de functionaliteit van de LoginHandler class nodig. Voordat ik namelijk een nieuw wachtwoord aan kan maken en kan mailen, moet ik wel weten of het email adres in de database voorkomt. De functie daarvoor staat al in LoginHandler. Maar, in de child class zou ik dan maar 2 van de 4 abstract functions hoeven te gebruiken. Wat een foutmelding oplevert. Ik kan natuurlijk 2 lege functies in de child class zetten, maar deze hele situatie maakt dat ik me ernstig afvraag of ik het überhaupt niet helemaal verkeerd heb aangepakt.

Mijn vraag, lijkt dit ergens op en zo nee, hoe kan ik dit beter aanpakken?

De abstract class LoginHandler:

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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
<?php
 abstract class LoginHandler {
    
    /**
      * ingevoerde gebruikersnaam
      */

 
     private $invoeremail;
 
    /**
      * ingevoerd wachtwoord
      */

  
     private $invoerwachtwoord;
      
    /**
      * ingevoerde naam gebruiker
      */

  
     private $db_handler;

    /**
      * prefix die gebruikt wordt voor unieke tabelnamen in database, uit settings
      */

 
     private $prefix;

    /**
     * constructor die de inloggegevens verwerkt
     */

    
     public function __construct( $prefix, DatabaseHandler $db_handler, $invoeremail, $invoerwachtwoord ){
          
          $this->prefix = $prefix;
          $this->db_handler = $db_handler;
          $this->invoeremail = $invoeremail;
          $this->invoerwachtwoord = $invoerwachtwoord;
          
     }

    

     /**
      * controleer of het email adres voorkomt in de database
      */

    
     public function check_login(){
        
        $this->velden = array( "gebruikers_email", "gebruikers_ID" );
        
        $this->db_handler->select_single ( $this->prefix . 'Gebruikers', $this->velden, 'gebruikers_email', $this->invoeremail );
        $this->gebruikers_email = $this->db_handler->get_single( "gebruikers_email" );
        $this->gebruikers_ID = $this->db_handler->get_single( "gebruikers_ID" );     
        
                if ( !empty( $this->gebruikers_email ) && !empty( $this->gebruikers_ID ) ){
                
                     //het email adres staat in de database, controleer nu het wachtwoord
                     return $this->email_match();
      
                   }
else {
                  
                    //het email adres staat niet in de database
                      return $this->geen_email_match();
                  }
  
     }
//end function check_email()
    
    
     /**
      * controleer of het wacthwoord overeenkomt met het ingevulde wachtwoord
      */
    
    
     public function check_wachtwoord() {
        
        $this->velden = array( "gebruikers_email", "gebruikers_ID", "gebruikers_wachtwoord" );
        
        $this->db_handler->select_single ( $this->prefix . 'Gebruikers', $this->velden, 'gebruikers_email', $this->gebruikers_email );
        $this->gebruikers_wachtwoord = $this->db_handler->get_single( "gebruikers_wachtwoord" );
        $this->gebruikers_ID = $this->db_handler->get_single( "gebruikers_ID" );     
        
                if ( password_verify( $this->invoerwachtwoord, $this->gebruikers_wachtwoord )) {
                
                    //wachtwoorden komen overeen, stel de session variabelen in en redirect naar de juiste pagina
                    return $this->inlog_match();
                
                }
else {
                
                    //wachtwoorden komen niet overeen
                    return $this->geen_wachtwoord_match();    
                }        
            
     }
//end function check_wachtwoord()
    
     abstract function geen_email_match();
    
     abstract function email_match();
    
     abstract function inlog_match();
    
     abstract function geen_wachtwoord_match();
    
    
 }
//end class Login_Handler
 
 ?>


Child class LoginHandlerWachtwoord (bij vergeten wachtwoord)

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
<?php
 /**
  * child class de uitvoer van een verloren wachtwoord regelt
  */

  class LoginHandlerWachtwoord extends LoginHandler {
      
      
    /**
      * als het email adres overeenkomt met dat in de database worden de gegevens opgeslagen en het wachtwoord hersteld
       */

    public function email_match(){
        
        $_SESSION[ 'vergetenwachtwoordid' ] = $this->gebruikers_ID;
        $_SESSION[ 'vergetenwachtwoordemail' ] = $this->gebruikers_email;
        
        $this->fout = 'wachtwoordherstellen.php';
        
        return $this->fout;
    
    }
//end function email_match
    
    
    /**
      * als het email adres niet in de database voorkomt wordt het inlogscherm getoond met bijbehorende foutmelding
       */

     public function geen_email_match(){
        
        $this->fout = '../index.php?fout=1';
        
        return $this->fout;
                
    }
//end function geen_email_match
    
    private function inlog_match(){
        //lege functie omdat ik hem niet gebruikt in deze situatie
    }
    
    private function geen_wachtwoord_match(){
        //lege functie omdat ik hem niet gebruikt in deze situatie
    }
    
 }
//end class LoginHandlerWacthwoord
 
 ?>
 
PHP hulp

PHP hulp

25/03/2025 03:59:39
 
Ward van der Put
Moderator

Ward van der Put

29/01/2017 15:42:02
Quote Anchor link
De abstract class wil vier situaties afgehandeld hebben: wel/geen geldig e-mailadres en wel/geen geldig wachtwoord. Die implementatie daarvan laat de abstract class echter over aan andere klassen. En dáár gaat het fout, omdat jij in je concrete toepassing wel de wel/geen geldig e-mailadres wilt afhandelen, maar niet de wel/geen geldig wachtwoord.

Eerste vraag is daarom: waarom wil je de toestanden wel/geen geldig wachtwoord niet implementeren, maar de twee toestanden wel/geen geldig e-mailadres wel? Mis je dan niet de helft van een login?
Gewijzigd op 29/01/2017 17:26:50 door Ward van der Put
 
Marlies Maalderink

Marlies Maalderink

29/01/2017 16:11:16
Quote Anchor link
Er zijn nog twee child classes voor deze abstract class, class LoginHandlerSession (die het werk doet als er session variabelen gevonden worden:

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
<?php
  class LoginHandlerSession extends LoginHandler {
     
    /*
      * als het email adres overeenkomt met dat in de database wordt het wachtwoord gecheckt (parent functie)
       */

     public function email_match(){
        
        return $this->check_wachtwoord( $this->invoerwachtwoord );
    
    }
//end function email_match
     
    
    /**
      * als het email adres niet overeenkomt met dat in de database wordt het inlogscherm weer getoond met foutmelding
       */

    public function geen_email_match(){
        
        $this->fout = '../index.php?fout=3';
        
        return $this->fout;
                
    }
//end function geen_email_match
    
    
     /**
      * als het wachtwoord niet overeenkomt met dat in de database wordt het inlogscherm weer getoond met foutmelding
       */
    
    public function geen_wachtwoord_match(){
        
        $this->fout = '../index.php?fout=3';
        
        return $this->fout;
        
    }
//end function geen_wachtwoord_match


     /**
      * als het email adres en het wachtwoord kloppen krijgt de gebruiker toegang
       */

    public function inlog_match(){
                
        return 1;
        
    }
//end function geen_wachtwoord_match
    
 }//end class LoginHandlerSession
 
 
 ?>


en class LoginHandlerPost, die de afhandeling regelt als er gepost is vanaf het login formulier:

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
<?php
 class LoginHandlerPost extends LoginHandler {
 
     /**
      * als het email adres overeenkomt met dat in de database wordt het wachtwoord gecheckt (parent functie)
       */

    public function email_match(){
        
        return $this->check_wachtwoord( $this->invoerwachtwoord );
    
    }
//end function email_match
 
 
     /**
      * als het email adres niet in de database voorkomt wordt het inlogscherm weer getoond met foutmelding
       */

    public function geen_email_match(){
        
        $this->fout = '../index.php?fout=1';
        
        return $this->fout;
                
    }
//end function geen_email_match
 
 
     /**
      * als het wachtwoord niet overeenkomt met dat in de database wordt het inlogscherm weer getoond met foutmelding
       */

    public function geen_wachtwoord_match(){
                
        $this->fout = '../index.php?fout=2';
        
        return $this->fout;
        
    }
//end function geen_wachtwoord_match
 
 
     /**
      * als het email adres en het wachtwoord kloppen worden de sessie variabelen ingesteld en krijgt de gebruiker
     * dmv het instellen van de 1; toegang tot de admin
       */

    public function inlog_match(){
        
        $_SESSION[ 'loginemail' ] = $this->gebruikers_email;
        $_SESSION[ 'loginwachtwoord' ] = $this->invoerwachtwoord;
        $_SESSION[ 'gebruikers_ID' ] = $this->gebruikers_ID;
                
        return 1;
        
    }
//end function geen_wachtwoord_match
    
    
 }//end class PostLoginHandler
?>



Toevoeging op 29/01/2017 16:12:20:

Als de gebruiker zijn wachtwoord kwijt is, dan hoeft het wachtwoord dus niet gecontroleerd te worden, alleen het email adres, voordat ik een nieuw wachtwoord aanmaak en mail
 
Ward van der Put
Moderator

Ward van der Put

29/01/2017 17:42:51
Quote Anchor link
Marlies Maalderink op 29/01/2017 16:11:16:
Als de gebruiker zijn wachtwoord kwijt is, dan hoeft het wachtwoord dus niet gecontroleerd te worden, alleen het email adres, voordat ik een nieuw wachtwoord aanmaak en mail

Klopt, dan is het geen login. En dus geen functionaliteit die een abstract class LoginHandler extendt, want er is geen login...

Je hebt dus een (abstract) class die te veel doet. Dat is een veelvoorkomend maar geen makkelijk probleem bij OOP programmeren.

Lang verhaal kort: je hebt die verificatie van een e-mailadres niet alleen nodig bij het inloggen maar ook bij een vergeten wachtwoord, dus je moet die refactoren naar iets dat op zich staat en wordt gebruikt door andere classes. De verificatie van een e-mailadres hoort niet thuis in de login zodra deze ook voor andere classes belangrijk is.
 
Marlies Maalderink

Marlies Maalderink

29/01/2017 18:21:43
Quote Anchor link
Dank je wel Ward. Pfff Ik vind het zo lastig om te bepalen hoe ik dit soort dingen vorm moet geven als er zoveel mogelijke situaties zijn.

Het verifiëren van het email adres en van het wachtwoord zal dan dus naar twee losse classes moeten. Maar je kan een child class geen gebruik laten maken van 2 parents. Mag ik vragen hoe jij dit zou structureren?
 
Thomas van den Heuvel

Thomas van den Heuvel

30/01/2017 17:51:28
Quote Anchor link
Zoals ik het zie doen die handlers iets met pagina(navigatie), formulieren en superglobals. En tegelijkertijd ben je bezig met het authenticeren van een gebruiker. Ik zou een user class aanmaken. Met ten minste twee methoden: een die een gebruiker authenticeert (invoer: gebruikersnaam, wachtwoord, uitvoer: een user id of false of wat dan ook) en een die een gebruiker inlogt (invoer: een user id, uitvoer: een boolean of het inloggen is geslaagd). Vervolgens onthoud je een user id in de sessie en herbouw je elke page-access het user object. Binnen je applicatie refereer je alleen aan dit user object, en niet aan je sessie of wat dan ook.
 
Marlies Maalderink

Marlies Maalderink

31/01/2017 13:54:14
Quote Anchor link
Dank je Thomas. Dat klinkt als een mooie manier om het aan te pakken. Volgens mij is het ook niet zo netjes/handig om het instellen van sessionvariabelen in deze class zelf te doen. Bovendien wil ik de beveiliging van de sessions nog uitbreiden en dan is het ook niet handig als dit aan de user class vast zit.

Overigens las ik gisteren (ik geloof hier op het forum ergens maar misschien was het ook wel ergens anders) dat het sowieso niet zo slim is om bij het inloggen een aparte foutmelding weer te geven voor 'email adres komt niet voor' en voor 'wachtwoord klopt niet' dus dat maakt het aantal mogelijke uitvoer opties ook weer kleiner. Je hebt dan nog maar 2 opties. Inloggen is gelukt of inloggen is niet gelukt...
 



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.