Beveiligingscontrole loginsysteem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

PHP developer (Symfony, Doctrine)

Functie Als PHP developer wordt er een hoge mate van zelfstandigheid verwacht, maar ook dat je goed opereert in een team waar kennis wordt gedeeld en dingen als codereviews erg veel voorkomen. Kwaliteit staat voorop, mede hierom werken ze bijvoorbeeld zonder echte deadlines in hun sprints. De SaaS-applicatie wordt volledig ontwikkeld in PHP en Symfony. De module bestaat uit een stuk informatie verrijking en intelligentie wat resulteert in een medische check. De logica wordt daarom in de code geïntrigeerd. Je bent onder andere bezig met complexe databases waar meer dan 80.000 medicijnen op verschillende niveaus in staan, die maandelijks worden

Bekijk vacature »

Embedded Developer C++

Functie omschrijving Ben jij op zoek naar een leuke uitdaging als Embedded Developer, zoek dan niet verder! Voor een leuke opdrachtgever in omgeving Rotterdam zijn wij op zoek naar een Embedded Developer die graag met Embedded Devices werkt. Je zult verantwoordelijk worden voor het ontwikkelen en onderhouden van diverse producten. Jouw specialisatie ligt op het vlak van software, hardware en back-end. Dit bedrijf is gespecialiseerd in het ontwerpen van software voor een unieke industrie. Wil jij betrokken worden bij een proces dat loopt van ontwikkeling tot installatie? Waarbij je bezig zult zijn met perfecte systemen die geleverd worden aan binnen

Bekijk vacature »

Back-End Web Developer

Als Back-End Web Developer bij Coolblue zorg je ervoor dat onze webshops elke dag een beetje beter zijn. Wat doe je als Back-End Web Developer bij Coolblue? Als Back-End Web Developer werk je met andere development teams samen om onze webshop zo optimaal mogelijk te laten werken en onze klanten blij te maken. Als backend developer weet je de weg in PHP, kan je in Typescript een microservice op zetten of ben je bereid om dit te leren. Ook Web Backend Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om te doen PHP

Bekijk vacature »

Randstad B.V.- Freelance Senior Fullstack Develope

Startdatum: 01.05.2023 Richttarief: € 75,00 - €85,00 Duur van de opdracht: 1 jaar Uren per week: 40 Werkmodel: Hybride, dinsdag en donderdag aanwezig op kantoor in Diemen en meer wanneer dit nodig is. Functieomschrijving: De ideale kandidaat gaat onderdeel uitmaken van een junior team binnen het foundation domein. Vanuit het foundation domein werkt dit team samen met andere foundation teams en teams uit het online domein (professionals B2B en B2C) voor het bouwen en integreren van HRM functionaliteiten (verlof en benefits) in de persoonlijke portal van Interim Professionals. Er is meer backend werk dan frontend, maar kandidaat moet beiden leuk

Bekijk vacature »

T-SQL Database developer

Functie omschrijving Ben jij een ETL database specialist? Houd jij ervan om te puzzelen met Databases, Query's & Stored procedures? Zoek jij uitdaging, vrijheid en verantwoordelijkheid? Zoek dan niet verder! Wij zijn per direct op zoek naar medior en senior database developers. Je gaat werken voor een relatief klein softwarebedrijf in omgeving Tilburg. Samen met 12 collega's (allemaal techneuten), ga jij je bezig houden met het bouwen en/of onderhouden van database software. Deze software wordt internationaal ingezet voor het automatiseren van logistieke processen. Jouw werkzaamheden gaan er als volgt uit zien: Je bent in een klein team met developers, verantwoordelijk

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 »

C# developer

Functie Als ervaren Software Engineer wordt jij verantwoordelijk voor het bedenken en ontwikkelen van technische (maatwerk) oplossingen voor onze klanten en dit samen met de klant af te stemmen. Jij wordt o.a. verantwoordelijk voor de doorontwikkeling het software pakket welke voor ons enorm belangrijk is. Dit pakket zorgt er namelijk voor dat wij complete productielijnen kunnen aansturen en monitoren. Daarnaast heb jij actief contact met onze hoofdvestiging om het software achter een van onze systemen te verbeteren en te herschrijven. Momenteel zijn onze C# applicaties geschreven met o.a. Winforms. Echter hebben wij de actieve ambitie om dit te gaan herschrijven

Bekijk vacature »

Fullstack Developer TOTO

Do you want to work with the latest technologies on the development of new systems and applications? Get moving and strengthen Nederlandse Loterij as a Fullstack Developer TOTO. Thanks to your efforts, complex business critical applications are always running smoothly. In this way, you directly contribute to a happy, healthy and sporty Netherlands. As a Fullstack Developer you score by: Taking ownership of the development cycle of an application in a large scale, high availability, geo redundant landscape Coaching your peer developers and safeguarding code quality Integrating the application with other components of the system using the available API’s Managing

Bekijk vacature »

Low Code Developer

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en ben jij HBO afgestudeerd in de richting van IT? Heb jij verstand van datamodellering, NO CODE Platformen en kun jij het aan om projecten te leiden? Voor een leuke opdrachtgever in omgeving Rotterdam zijn wij op zoek naar een No Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten in heel het land! Wat ga je hier zoal doen? Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform, je kunt denken aan

Bekijk vacature »

SQL Developer

Functie omschrijving Altijd al willen werken bij een snelgroeiend bedrijf, actief in de logistieke sector? Dit is je kans! Ik ben op zoek naar een ervaren SQL Developer in de omgeving Tilburg. Dit bedrijf is gespecialiseerd in in de ontwikkeling van software en maatwerk oplossingen voor het automatiseren van logistieke processen. Klanten zijn o.a. BOL en andere grote distributiecentrums. Jouw taken worden vooral: Verantwoordelijk voor ontwikkelen van stored procedures, voor snelle afhandeling van data; Optimalisatie van de SQL query's en T-SQL query's; Jij gaat je bezig houden met ontwerpen, ontwikkelen en optimaliseren van de MS SQL Databases; In deze functie

Bekijk vacature »

Front-end developer (Angular)

Functie Het team bestaat uit een architect, fullstack developers, app developers, de product owner en projectmanager. Eenieder draagt vanuit zijn discipline bij aan een complete oplossing voor de klant. Uiteraard zul je hierin nauw samenwerken met je collega’s. Jij wordt verantwoordelijk voor de front-end implementatie en fungeert als lead op dit gebied binnen het team. Je kunt helder formuleren, ideeën uitdragen en overbrengen aan je collega’s. Qua technische stack is het vooral van belang dat je ervaren bent met Angular, HTML5, CSS en TypeScript. Verder is ervaring in NgRx, Bootstrap, BEM en Cypress een pré, evenals affiniteit met UX/UI Design!

Bekijk vacature »

PHP Developer

Dit ga je doen Ontwikkelen, implementeren en testen van PHP-oplossingen en Apps voor klanten en bedrijfsprocessen; Opstellen van requirements en uitwerken van de oplossingen; Testen van software en borgen van een soepele overdracht, inclusief documentatie; Proactief adviseren vanuit eigen expertisegebied over ontwikkelingen en verbeterpunten in technische toepassingen en processen binnen de organisatie. Hier ga je werken De organisatie is een ambitieuze en vooruitstrevende speler in de markt in de regio Rotterdam. Ze zijn de snelst groeiende in hun branche. Met een excellent aanbod en service willen zij de beste keuze zijn voor hun bestaande en nieuwe klanten. Dit alles doen

Bekijk vacature »

SQL database developer

Functieomschrijving Heb jij ongeveer 3 jaar ervaring als SQL database developer? Dit bedrijf bouwt applicaties om processen in distributiecentra te optimaliseren. Ter uitbreiding van het development team zijn wij op zoek naar een SQL database ontwikkelaar. Wil jij werken voor een groeiende werkgever in regio Breda waar jij de ruimte en tijd krijgt jezelf te ontwikkelen? Lees dan snel verder! Hoe ziet jouw takenpakket eruit? Je houdt je bezig met het creëren en bouwen van MS SQL server databases; Je werkt aan innovatieve softwareoplossingen voor het verbeteren en/of vernieuwen van logistieke processen; Je gaat projecten vanaf het begin tot het

Bekijk vacature »

Delphi developer

Functie Als Delphi developer ga jij aan de slag in een team met twee andere ervaren Delphi programmeurs waaronder de Hoofd programmeur. Als team zijn jullie verantwoordelijk voor de doorontwikkeling van jullie bestaande applicatie. Daarnaast zijn jullie verantwoordelijk voor het onderhouden van deze applicatie en het oplossen van eventuele bugs. Eisen - HBO werk en denk niveau; - Minimaal één jaar ervaring met Delphi; - Goede beheersing van de Nederlandse taal in woord en geschrift; - Jij bent zelfstandig, maar kan ook in team verband werken. Aanbod - €3000,-- €4000,- op basis van jouw kennis en ervaring; - 8% vakantiegeld;

Bekijk vacature »

Backend developer

Functie omschrijving Ben jij graag bezig met de back-end van applicaties? Zou je dit graag willen doen voor een kleine werkgever waar ook tijd is voor een drankje op zijn tijd? Je taken hierbij zullen bestaan uit: Gebruik maken van de volgende technieken: .NET (core), C#, SQL, XML, MVC, JSON, REST & SOAP API. Gebruik maken van de volgende tools: Visual Studio, GIT, Jira, Jenkins. Bovengenoemde technieken en tools ga je gebruiken om: Nieuwe functionaliteiten te ontwikkelen. Wijzigingsverzoeken van klanten uitvoeren. Verzorgen van koppelingen tussen data. Bedrijfsprofiel Jouw nieuwe werkgever bevindt zich in regio Raamdonksveer en bieden oplossingen op gebied

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 19:01:50
 
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.