Beveiligingscontrole loginsysteem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Back-end Developer

Functieomschrijving Heb jij kort geleden jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe stap? Voor een softwarebedrijf in regio Oosterhout zijn wij op zoek naar een back-end developer met kennis of ervaring met C# en SQL. Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je brengt de aanpassingssuggesties van klanten in kaart, om ze vervolgens te analyseren en daarna te concluderen of de aanpassing een verbetering is; Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten;

Bekijk vacature »

Software Developer

Dit ga je doen Je bent verantwoordelijk voor de warehouse applicatie die een integratie heeft met de PLC laag; Je ontwikkelt in C#/.Net; Je werkt mee aan de migratie naar .NET 6; Je bent verantwoordelijk voor het ontwikkelen van interfaces en het visualiseren van componenten; Je denkt mee over het design voor business oplossingen; Je bent verantwoordelijk voor het testen van de gebouwde oplossing. Hier ga je werken Voor een internationale organisatie in de transport zijn wij momenteel op zoek naar een Software Developer. Zij zijn wereldwijd de grootste speler en lopen voorop met het automatiseren van alle processen van

Bekijk vacature »

C# .NET Developer IoT SQL Server

Samengevat: Wij ontwikkelen innovatieve oplossingen om apparaten en bezittingen op een eenvoudige en flexibele manier te beveiligen. Ben jij een C# .NET developer? Heb jij ervaring met C# en SQL server? Vaste baan: C# .NET Developer IoT HBO €3.200 - €4.500 Deze werkgever is gespecialiseerd in hoogwaardige GSM/GPRS alarm- en telemetrietechnologie. Met een eigen productlijn en klantspecifieke ontwikkelingen biedt deze werkgever oplossingen om op afstand te meten, melden, loggen en aansturen, ook op plaatsen zonder stroomvoorziening. Onze producten worden gekarakteriseerd door flexibiliteit in de configuratie, betrouwbaarheid en een extreem laag stroomverbruik. Zij werken voor MKB klanten. Deze werkgever heeft veel

Bekijk vacature »

.NET Developer te Naarden

Bedrijfsomschrijving Voor mijn klant ben ik op zoek naar een .NET Developer om het huidige team te komen versterken. Deze organisatie bevindt zich in de logistieke sector, en zij hebben een eigen ERP systeem ontwikkeld dat zij inzetten ter optimalisatie van de logistieke processen van haar eindklanten. Deze organisatie bestaat inmiddels al ruim 20 jaar, waarbij zij een duidelijke missie hebben, namelijk: het werk van de eindklant makkelijker maken door de systemen die zij leveren. Ze werken over heel de wereld, wat deze organisatie een echte internationale speler maakt. Binnen de organisatie kenmerken ze zich door een dynamische en professionele

Bekijk vacature »

Team Lead/ Lead developer gezocht (Hands-on, PHP,

Functie Als Team Lead ben je de leider van één van de ontwikkelteams binnen de organisatie. Je leidt als lead developer een goed draaiend team dat werkt aan complexe en duurzame applicaties en API’s. Vanuit je kennis en ervaring ben je in staat het grote plaatje te blijven overzien, en kritisch mee te denken over bijvoorbeeld de architectuur, maar ook de algehele aanpak binnen het project. Je laat je team niet alleen technisch goed functioneren maar ben ook betrokken bij het menselijke aspect. Zo weet jij je collega’s te motiveren en begeleiden in hun dagelijkse werk. Buiten het team ben

Bekijk vacature »

OutSystems developer

Dit ga je doen Klanten adviseren over de mogelijkheden van OutSystems; OutSystems oplossingen ontwikkelen en implementeren; Stakeholdermanagement; Kennis en expertise up to date houden en delen met het team. Hier ga je werken Onze opdrachtgever, gevestigd in regio Amsterdam, is een innovatieve dienstverlener die zich richt op grote corporates in verschillende sectoren. Doordat je bij veel verschillende klanten aan de slag zal gaan is geen enkel project hetzelfde. De organisatie kenmerkt zich door hoge mate van professionaliteit en innovatieve oplossingen. In de rol van OutSystems developer zal jij verschillende grote klanten helpen om efficiënte OutSystems oplossingen te ontwikkelen en implementeren.

Bekijk vacature »

Software Ontwikkelaar PHP

Functie omschrijving Software Ontwikkelaar PHP gezocht! Wij zijn op zoek naar een ervaren PHP Software Ontwikkelaar om het team van onze opdrachtgever te versterken! De ideale kandidaat zal fungeren als verlengstuk van klanten en complexe technische vraagstukken met enthousiasme benaderen. Naast het werken met de nieuwste technologieën, ben je in staat om aan meerdere projecten tegelijkertijd te werken. Als je deze uitdaging aangaat, werk je nauw samen met front-end developers en draag je bij aan het realiseren van grote veranderingen bij klanten. Het bedrijf zoekt iemand die zichzelf graag uitdaagt en altijd streeft naar het leveren van de beste resultaten.

Bekijk vacature »

Senior Front-end Developer

Wordt jij de nieuwe Front end specialist / developer? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Onze klantenkring is groot en divers, dat vraagt om flexibiliteit van jou. Tegelijkertijd betekent dit dagelijks nieuwe dingen leren én dat geen werkdag hetzelfde is. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling waarbij iedereen welkom is, zowel binnen als

Bekijk vacature »

Full stack ontwikkelaar Laravel, Vue.js

Functie Als ontwikkelaar binnen deze organisatie hou jij je voornamelijk met lopende projecten voor de verschillende klanten. Zo bouw je de ene dag aan prijsschifting systemen en de andere dag onderzoek je crawlers en stel je ze zo in dat de data goed binnen komt binnen het systeem. Daarnaast bouw je mee aan dashboards en ben je dus constant bezig met het verbeteren van het platform. Er is een vaste werkwijze, zo werken ze met Trello kaarten en onderverdelen ze deze aan het begin van iedere week onder de developers. Dit wordt door de lead developer gedaan, maar in samenspraak

Bekijk vacature »

Hands-on Solution Architect / Software Architect (

TenneT is hard groeiend om de onze ambities waar te kunnen maken. Zo nemen wij een leidende rol in het aanjagen van de energietransitie. Het werven van nieuw talent speelt daarin een cruciale rol. Wij zijn op zoek naar een gedreven Solution Architect / Software Architect op onze locatie Arnhem die hieraan wil bijdragen en misschien ben jij dat wel? Jouw bijdrage aan TenneT Je werkt samen met gedreven DevOps teams, bestaande uit frontend, backend en middleware developers, testers, UX-designers. Samen met de teams ben je continu op zoek naar de beste oplossingen voor onze klanten. Als Solution Architect onderzoek

Bekijk vacature »

Leidinggevend Full Stack Developer

Hé jij, nieuwe Pinkcuber! Ga aan de slag bij Pinkcube, online leverancier van promotieartikelen! Een innovatieve organisatie waar extra stappen zetten voor klanten de normaalste zaak van de wereld is. Ambitieus zijn we ook. ‘Naoberschap’ staat bij Pinkcube hoog in het vaandel; we helpen elkaar en iedereen is welkom. Pinkcube is Great Place to Work Certified, erkend leerbedrijf, maatschappelijk betrokken partner van stichting Present en partner van CliniClowns. En misschien wel jouw nieuwe werkgever. Wij zoeken namelijk een enthousiaste: Leidinggevend Full Stack Developer (40 uur, medior/senior) Ben jij klaar om baanbrekende ideeën tot leven te brengen en deel uit te

Bekijk vacature »

Oracle Apex Developer

Dit ga je doen Jouw taken bestaan uit: Het bouwen maatwerk Oracle applicaties voor Europese business units; Het implementeren van de nieuwste technieken om te blijven innoveren; Actief meedenken en aandragen van verbetervoorstellen. Hier ga je werken Deze organisatie in de regio Veenendaal is een van wereld grootste retailers met ruim 16.000 winkels in 27 markten en jaarlijks ruim 5,3 miljard klanten die winkelen bij een van hun welbekende retailmerken. Binnen de organisatie is er een IT Group actief die dient als IT Service Provider voor de hele organisatie en waar dagelijks IT'ers werken aan state-of-the-art IT oplossingen. Dit doen

Bekijk vacature »

Junior Java Developer

Dit ga je doen Full stack web- en appdevelopment; Vertalen van de functionele wensen naar de technische specificaties; Sturing geven aan/klank board zijn voor de software teams; Trainen van de software teams; Sparren met klanten; Meedenken over architectuur. Hier ga je werken De organisatie is een bureau welke websites en mobiele applicaties bouwt voor verschillende toonaangevende organisaties. Hierbij richten zij zich voornamelijk op de sectoren leisure, overheid en zorg. De sfeer intern kenmerkt zich door informaliteit, gezelligheid en ambitie. Ze werken dag in dag uit samen om mooie producten op te leveren voor hun klanten. Op dit moment zijn er

Bekijk vacature »

Developer

Functie omschrijving In deze functie ga je werken als C# Developer. Jij gaat aan de slag met de volgende taken: Maatwerk software bouwen; Huidige softwareprojecten verder uitbouwen en optimaliseren; Ideeën van de klant omzetten naar handige oplossingen en tools; Bovenstaande doe je middels de Microsoft- stack: C#, ASP.NET en MVC/ Entity Framework. Ben je net afgestudeerd aan een HBO opleiding Informatica, aarzel dan niet om te solliciteren. Dit is namelijk de ideale startersfunctie! Bedrijfsprofiel Deze organisatie is gevestigd in de regio van Boxtel. Het is van oorsprong een familiebedrijf, die gestart zijn met het bouwen van websites. Dit is door

Bekijk vacature »

Traineeship Full Stack .NET Developer

Dit ga je doen Start op 7 augustus 2023 bij de Experis Academy en ontwikkel jezelf tot een gewilde Full Stack .NET Developer. Maar hoe ziet het traineeship eruit en wat kun je verwachten? Periode 1 De eerste 3 maanden volg je fulltime, vanuit huis, een op maat gemaakte training in teamverband. Je leert belangrijke theorie en krijgt kennis van de benodigde vaardigheden en competenties die nodig zijn om de IT-arbeidsmarkt te betreden. Zowel zelfstandig als in teamverband voer je praktijkopdrachten op het gebied van front- en backend development uit. Wat er per week op het programma staat kun je

Bekijk vacature »

Pagina: 1 2 volgende »

Kevin de Groot

Kevin de Groot

15/12/2010 16:47:15
Quote Anchor link
Beste mensen,

Momenteel ben ik bezig om een veilig loginsysteem te bouwen voor een bekende van me. Nu luidt de vraag; is mijn beveiligingssysteem (redelijk) veilig?

- De gebruiker logt in met de gegevens op de loginpagina. Indien alles correct is zal het systeem de sessies aanmaken voor de gebruiker. Één sessie voor het gebruikersid, één voor het ip-adres en één voor de sleutel.

- Op een 'beveiligde pagina' wordt de gebruiker gechecked door middel van de functie die hieronder staat.

Note 1: de inlogpagina is volgens mij wel veilig, maar kan ik op verzoek ook wel even plaatsen.

Note 2: de functie werkt gewoon dus ik test hem wél.

Kortom; is deze functie veilig genoeg?

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
<?php

function getLevel()
{

    if (isset($_SESSION['gebruikersid']) AND !empty($_SESSION['gebruikersid']) AND ctype_digit($_SESSION['gebruikersid']))
    {

        if (isset($_SESSION['ipadres']) AND !empty($_SESSION['ipadres']) AND $_SESSION['ipadres'] == $_SERVER['REMOTE_ADDR'])
        {

            if (isset($_SESSION['sleutel']) AND !empty($_SESSION['sleutel']) AND strlen($_SESSION['sleutel']) == 40)
            {

                $qSelect = mysql_query("SELECT gebruiker_actief
                                        FROM gebruikrs
                                        WHERE gebruiker_id = '"
. veiligeInvoer($_SESSION['gebruikersid']) ."'
                                        AND inlog_ipadres = '"
. veiligeInvoer($_SESSION['ipadres']) ."'
                                        AND inlog_sleutel = '"
. veiligeInvoer($_SESSION['sleutel']) ."'
                                  "
);
                                    
                if (mysql_num_rows($qSelect) == 1)
                {

                    $qFetch = mysql_fetch_assoc($qSelect);
                    
                    if ($qFetch['gebruiker_actief'] == 1)
                    {

                        return 1;
                    }

                    else
                    {
                        verwijderSessies();
                        return 0;
                    }
                }

                else
                {
                    verwijderSessies();
                    return 0;
                }
            }

            else
            {
                verwijderSessies();
                return 0;
            }
        }

        else
        {
            verwijderSessies();
            return 0;
        }
    }

    else
    {
        verwijderSessies();
        return 0;
    }
}


?>


Alvast bedankt.


Met vriendelijke groet,

Kevin de Groot
Gewijzigd op 15/12/2010 17:14:09 door Kevin de Groot
 
PHP hulp

PHP hulp

27/04/2024 20:18:40
 
PHP Scripter

PHP Scripter

15/12/2010 16:50:53
Quote Anchor link
Dit moet toch ook werken?

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
<?php
function getLevel()
{

    if (isset($_SESSION['gebruikersid']) AND !empty($_SESSION['gebruikersid']) AND ctype_digit($_SESSION['gebruikersid']))
    {

        $sessie = false;
        
        if (isset($_SESSION['ipadres']) AND !empty($_SESSION['ipadres']) AND $_SESSION['ipadres'] == $_SERVER['REMOTE_ADDR'])
        {

            $sessie = false;
            
            if (isset($_SESSION['sleutel']) AND !empty($_SESSION['sleutel']) AND strlen($_SESSION['sleutel']) == 40)
            {

                $sessie = false;
                
                $qSelect = mysql_query("SELECT gebruiker_actief
                                        FROM gebruikrs
                                        WHERE gebruiker_id = '"
. veiligeInvoer($_SESSION['gebruikersid']) ."'
                                        AND inlog_ipadres = '"
. veiligeInvoer($_SESSION['ipadres']) ."'
                                        AND inlog_sleutel = '"
. veiligeInvoer($_SESSION['sleutel']) ."'
                                  "
);
                                    
                if (mysql_num_rows($qSelect) == 1)
                {

                    $qFetch = mysql_fetch_assoc($qSelect);
                    
                    if ($qFetch['gebruiker_actief'] == 1)
                    {

                        return 1;
                    }

                    else if ( $sessie = false )
                    {

                        verwijderSessie();
                    }
                }
            }
        }
    }
}
[
/code]
 
Kevin de Groot

Kevin de Groot

15/12/2010 16:53:04
Quote Anchor link
Volgens mij wel gewoon, toch? Is wel een stukje korter, maar goed, zal de functie veilig (genoeg) zijn?
 
Chris -

Chris -

15/12/2010 16:58:18
Quote Anchor link
Wat zijn de functies veiligeInvoer en verwijderSessie()?
 
Jordi Kroon

Jordi Kroon

15/12/2010 16:59:56
Quote Anchor link
is dat niet session_destroy();
heb je hem al getest? zoja ? en werkt hij ook
 
Obelix Idefix

Obelix Idefix

15/12/2010 17:00:01
Quote Anchor link
Kevin de Groot op 15/12/2010 16:47:15:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php

    if (isset($_SESSION['gebruikersid']) AND !empty($_SESSION['gebruikersid']) AND ctype_digit($_SESSION['gebruikersid']))
?>

Waarom die !empty controle; je controleert toch met isset al of session bestaat en met ctype controleer je of het een getal is?
Kevin de Groot op 15/12/2010 16:47:15:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
if (isset($_SESSION['ipadres']) AND !empty($_SESSION['ipadres']) AND $_SESSION['ipadres'] == $_SERVER['REMOTE_ADDR'])
?>

Hiervoor hetzelfde; waarom die !empty controle?

Kevin de Groot op 15/12/2010 16:47:15:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
if (isset($_SESSION['sleutel']) AND !empty($_SESSION['sleutel']) AND strlen($_SESSION['sleutel']) == 40)

?>

Hiervoor hetzelfde; waarom die !empty controle?
En waarom in zoveel regels? Afgaande op de inhoud van de diverse else, kan het volgens mij gewoon in 1x.
Zorg voor foutafhandeling van je query.

Waar komt veiligeInvoer en verwijderSessie vandaan en wat doet die?

Daarnaast: er is verschil tussen AND en &&.
Gewijzigd op 15/12/2010 17:00:45 door Obelix Idefix
 
Kevin de Groot

Kevin de Groot

15/12/2010 17:04:33
Quote Anchor link
Ik controleer eerst of de sessie geset is, vervolgens of hij niet leeg is (want het is mogelijk dat een sessie geen waarde heeft) en daarna of het een legitieme karakter is (In dit geval 0-9).

De functie 'veiligeInvoer' ziet er als volgt uit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php

function veiligeInvoer($sInput)
{

    $sOutput = (function_exists('mysql_real_escape_string')) ? mysql_real_escape_string($sInput) : addslashes($sInput);
    
    return htmlentities($sOutput, ENT_QUOTES);
}


?>


De functie 'verwijderSessies' ziet er als volgt uit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php

function verwijderSessies()
{

    if (isset($_SESSION['gebruikersid']))
    {

        $_SESSION = array();
        session_destroy();
    }
}


?>
 
Jordi Kroon

Jordi Kroon

15/12/2010 17:09:02
Quote Anchor link
zonder session_start(); werkt session_destroy(); ook niet
 
Kevin de Groot

Kevin de Groot

15/12/2010 17:12:43
Quote Anchor link
Jordi kroon op 15/12/2010 17:09:02:
zonder session_start(); werkt session_destroy(); ook niet


Het bestand waar deze functie in staat wordt d.m.v. een include 'toegevoegd' aan de index.php. In de index.php staat session_start();.
 
Kris Peeters

Kris Peeters

15/12/2010 17:14:36
Quote Anchor link
Obelix en Idefix op 15/12/2010 17:00:01:
... Waarom die !empty controle; ...



Kevin de Groot op 15/12/2010 17:04:33:
Ik controleer eerst of de sessie geset is, vervolgens of hij niet leeg is (want het is mogelijk dat een sessie geen waarde heeft)


De functie empty doet zelf al een isset check. Je mag dus empty() gebruiken zonder dat je eerst moet checken op isset().
 
Kevin de Groot

Kevin de Groot

15/12/2010 17:17:06
Quote Anchor link
Kris Peeters op 15/12/2010 17:14:36:
Obelix en Idefix op 15/12/2010 17:00:01:
... Waarom die !empty controle; ...



Kevin de Groot op 15/12/2010 17:04:33:
Ik controleer eerst of de sessie geset is, vervolgens of hij niet leeg is (want het is mogelijk dat een sessie geen waarde heeft)


De functie empty doet zelf al een isset check. Je mag dus empty() gebruiken zonder dat je eerst moet checken op isset().


Dit is nieuw voor mij, ik las zoiets dus net ook al op PHP.net. Ik zal het er meteen in verwerken. Dankje. Maar kunnen mensen (lees: hackers) ook eenvoudig inbreken?
 
Kevin de Groot

Kevin de Groot

17/12/2010 12:47:27
Quote Anchor link
Weet iemand of dit systeem enigzins "hackerproof" is?
 
Kris Peeters

Kris Peeters

17/12/2010 13:48:36
Quote Anchor link
htmlentities is een functie die je beschermt tegen (al dan niet kwalijke) html.
Kwestie dat mensen geen actieve html kunnen posten (post bv. dit: "</div></div></div>" en de kans is vrij groot dat je hele lay out naar de knoppen is).

htmlentities gebruik je dan ook bij het tonen van gegevens naar de client. De functie dient niet om je database te beschermen.

Ik zie dus niet goed wat dat daar komt te staan.

Ik zal zelf ook eens testen.

Nog iets: als je een integer verwacht, cast die dan naar int. Meer bescherming heb je niet nodig.

bv. WHERE gebruiker_id = '". (int) $_SESSION['gebruikersid'] ."'

----------------------------------
PS.
@ PHP Scripter:
else if ( $sessie = false ) {
Dit slaat nergens op.

Ten eerste hoort daar een dubbele =
Ten tweede, ik zie nergens $sessie = true; staan.
Gewijzigd op 17/12/2010 13:52:34 door Kris Peeters
 
Kevin de Groot

Kevin de Groot

17/12/2010 13:52:03
Quote Anchor link
Kris Peeters op 17/12/2010 13:48:36:
htmlentities is een functie die je beschermt tegen (al dan niet kwalijke) html.
Kwestie dat mensen geen actieve html kunnen posten (post bv. dit: "</div></div></div>" en de kans is vrij groot dat je hele lay out naar de knoppen is).

htmlentities gebruik je dan ook bij het tonen van gegevens naar de client. De functie dient niet om je database te beschermen.

Ik zie dus niet goed wat dat daar komt te staan.

Ik zal zelf ook eens testen.

----------------------------------
PS.
@ PHP Scripter:
else if ( $sessie = false ) {
Dit slaat nergens op.

Ten eerste hoort daar een dubbele =
Ten tweede, ik zie nergens $sessie = true; staan.




Dat heb ik gedaan voor overige invoer (voor bijvoorbeeld berichten) en dacht dat het geen kwaad zou doen om deze functie ook hier te gebruiken. Vandaar die htmlentities.

Edit: die htmlentities is voor TniyMCE.
Gewijzigd op 17/12/2010 13:53:11 door Kevin de Groot
 
Kris Peeters

Kris Peeters

17/12/2010 13:56:17
Quote Anchor link
(gepost vóór de laaste aanpassing vorige post)
Dan nog ...

Het is beter om data van gebruikers zo puur mogelijk op te slaan. Juist beschermen tegen injection.

Je moet dan wel telkens bij het tonen van de data elk veld controleren.

Een argument: stel dat een gebruiker zijn post wil aanpassen, dan zal hij niet snappen dat daar van alles staat dat hij niet zelf heeft gepost.
Gewijzigd op 17/12/2010 13:57:47 door Kris Peeters
 
PHP Scripter

PHP Scripter

17/12/2010 13:57:56
Quote Anchor link
@Kris. Hoezo dat slaat nergens op? Als je even goed kijkt zie je waarvoor het dient. En één typefoutje, yeah right.
 
Kevin de Groot

Kevin de Groot

17/12/2010 14:00:06
Quote Anchor link
Kris Peeters op 17/12/2010 13:56:17:
(gepost vóór de laaste aanpassing vorige post)
Dan nog ...

Het is beter om data van gebruikers zo puur mogelijk op te slaan. Juist beschermen tegen injection.

Je moet dan wel telkens bij het tonen van de data elk veld controleren.

Een argument: stel dat een gebruiker zijn post wil aanpassen, dan zal hij niet snappen dat daar van alles staat dat hij niet zelf heeft gepost.


Oké, ik kreeg het namelijk niet voor elkaar zonder die htmlentities. Maar beveiliging voor de database (injecties) kan dus gewoon beter met addslashes of mysql_real_escape_string, toch?
 
Kris Peeters

Kris Peeters

17/12/2010 14:03:24
Quote Anchor link
In jouw stuk script is $sessie altijd false. Heel erg spannend is die if conditie niet he.
De else doet al alles; die $sessie doet niets.
Gewijzigd op 17/12/2010 14:04:16 door Kris Peeters
 
PHP Scripter

PHP Scripter

17/12/2010 14:07:32
Quote Anchor link
Kris ik zie het, beetje onlogisch gedaan ja. Excuses!
 
Kevin de Groot

Kevin de Groot

17/12/2010 14:12:13
Quote Anchor link
Oké, ik heb wijzigingen doorgevoerd en het ziet er nu zo uit:

Note: ik heb de else-jes laten staan. Dit vind ik sowieso wat overzichtelijker.

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
<?php

function mijnGebruikerslevel()
{

    if (!empty($_SESSION['gebruikersid']) AND ctype_digit($_SESSION['gebruikersid']))
    {

        if (!empty($_SESSION['ipadres']) AND $_SESSION['ipadres'] == $_SERVER['REMOTE_ADDR'])
        {

            if (!empty($_SESSION['sleutel']) AND strlen($_SESSION['sleutel']) == 40)
            {

                $gSelect = mysql_query("SELECT COUNT(gebruikersid) AS aantal_resultaten
                                        FROM gebruikers
                                        WHERE gebruiker_id = '"
. (int)$_SESSION['gebruikersid'] ."'
                                        AND gebruiker_actief = '1'
                                        AND login_ipadres = '"
. $_SESSION['ipadres'] ."'
                                        AND login_sleutel = '"
. $_SESSION['sleutel'] ."'
                                        ORDER BY gebruiker_id
                                        LIMIT 0,1
                                    "
);
                $gFetch = mysql_fetch_assoc($gSelect);
                
                if ($gFetch['aantal_resultaten'] == 1)
                {

                    return true;
                }

                else
                {
                    verwijderSessies();
                    return false;
                }
            }

            else
            {
                verwijderSessies();
                return false;
            }
        }

        else
        {
            verwijderSessies();
            return false;
        }
    }

    else
    {
        verwijderSessies();
        return false;
    }
}

function
verwijderSessies()
{

    if (isset($_SESSION['gebruikersid']))
    {

        $_SESSION = array();
        session_destroy();
    }
}


?>
 
Jordi Kroon

Jordi Kroon

17/12/2010 14:14:11
Quote Anchor link
waarom allemaal die verwijdersssies(); ?

ik kan het mishebben maar is dat niet overbodig
 

Pagina: 1 2 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.