Session sluit niet

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Implementatie specialist

Standplaats: Honselersdijk Aantal uren: 32 – 40 uur Opleidingsniveau: HBO werk- en denkniveau Ben jij de implementatie expert die onze klanten helpt bij het integreren van de Greencommerce software? Ben jij daarnaast communicatief sterk, denk jij graag in verbeteringen en heb je ervaring met ICT? Lees dan snel verder! Bedrijfsinformatie Jem-id is een grote speler op het gebied van software ontwikkeling. Zo zijn wij continu bezig met het ontwikkelen van de meest innovatieve software voor de AGF- en sierteeltsector. We creëren oplossingen die er toe doen en verbinden klanten niet alleen op technisch vlak, maar zoeken ook de verbinding in

Bekijk vacature »

Back-end PHP Developer

Dit ga je doen Her- en uitbouwen van het inhouse softwareplatform dmv PHP; Onderhouden van bovengenoemd platform in PHP; Sparren met het team; Meedenken over nieuwe functionaliteiten, security etc; Jouw input leveren aan het proces door op de hoogte te blijven van nieuwe ontwikkelingen etc. Hier ga je werken Onze klant, gevestigd in de omgeving van Alkmaar, levert wereldwijd oplossingen op het gebied van IT. Dag in dag uit werken zij met veel passie aan hun product waarmee ze streven naar verbeteringen binnen zorg. Voor onze klant zijn we op zoek naar een medior PHP Developer. Je komt te werken

Bekijk vacature »

Laravel developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Technical Asset Specialist Substations

TenneT is growing fast to realize its strategic ambitions. We play a leading role in driving the energy transition. We are looking for a passionate Technical Asset Specialist for substations (onshore and offshore) at our location in Arnhem who will contribute to this and that might be you? Your contribution to TenneT We are searching for a motivated and engaged colleague as a technical asset specialist (onshore and offshore) for instrument transformers and surge arresters, with preferably a strong background in the area of insulation coordination. As a specialist for insulation coordination you are responsible for overarching topics regarding insultation

Bekijk vacature »

Frontend Developer - Leeuwarden

Frontend Developer – Leeuwarden Als Frontend Developer bouw jij mee aan het onderwijs van de toekomst! In een scrum team werken met jonge en enthousiaste collega’s, moderne technieken, ruimte voor eigen ontwikkeling en op een proactieve wijze kunnen meewerken aan innovatie binnen het onderwijs. Magister is het state-of-the-art softwarepakket dat scholen in het voortgezet onderwijs op alle fronten ontzorgt. Van leerlingenadministratie tot het ondersteunen van individuele leerlijnen, van toegang tot digitaal lesmateriaal tot het plannen van het lesrooster. In de Magister app bedient Magister ruim 2,5 miljoen gebruikers waarvan, dagelijks meer dan 600.000 unieke. Hiermee is Magister de absolute marktleider

Bekijk vacature »

Medior PHP Developer

Functie omschrijving We are looking for a dutch native speaker Wil jij als developer werken bij een interne organisatie en de eigen software verder helpen ontwikkelen? Lees dan snel verder! In deze functie ga je werken als PHP Developer en de interne software en applicaties verder ontwikkelen. In het kort houdt dit in: Je gaat de interne applicaties en software verder optimaliseren. Verder bouw je verschillende API's en koppelingen tussen systemen. Je gaat het CRM-systeem door middel van PHP verder ontwikkelen. Ook ga je collega's ondersteunen bij vragen over de software en applicaties. Bedrijfsprofiel Dit bedrijf is actief in het

Bekijk vacature »

Back end developer

Functie Jij als full stack ontwikkelaar komt te werken in een team bestaande uit 4 back end programmeurs, 2 vormgevers/ Front end developers en een online marketeer. Qua persoonlijkheden is het team erg gevarieerd van sportfanaten tot gameliefhebbers en Golfers. Een ding heeft iedereen hier gemeen; Passie voor goede code. In jouw rol zul je voor 90% van je tijd je bezig houden met het ontwikkelen van grote maatwerk applicaties. Daarnaast hebben wij op aanvraag ook wel eens een website of onderhoudsklusje, die opgepakt moet worden en hier ben jij ook niet vies van. De technische uitdaging momenteel is dat

Bekijk vacature »

Ontwikkelaar Centrale Monitoring

Ontwikkelaar centrale Monitoring Functieomschrijving Wil jij een bijdrage leveren aan het onderhoud, opzetten en ontwikkelingen van technologieën van SSC-ICT, een van de grootste ICT-dienstverleners van en voor de Rijksoverheid? Je komt als monitorspecialist te werken bij team Operations Management Services. Dit team werkt aan het stabiliseren en waarborgen van een betrouwbare monitoromgeving voor 7 ministeries. Jij begeleidt het implementatieproces van de te monitoren technologieën, onder andere via management packs, connectoren en API's. Je hebt hiervoor veel contact met interne en externe klanten, die hun wensen op het gebied van monitoring aan jou doorgeven. Je beoordeelt deze wensen en komt met

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 »

Lead Webdeveloper

Als Lead webdeveloper bij KUBUS ben je verantwoordelijk voor het implementatie design van requirements en de software architectuur van de webapplicatie en services van BIMcollab. In je rol als lead developer zoek je als vanzelf op een creatieve manier naar het optimum tussen benodigde implementatie-tijd, de performance van de applicatie en een snelle go-to-market van features, aansluitend bij onze geautomatiseerde test- en release train. Hierbij bewaak je in samenwerking met de andere senior ontwikkelaars in je team de architectuur van de applicatie en adviseer je de product owner over noodzakelijke refactoring om de onderhoudbaarheid van het platform te verbeteren. Ons

Bekijk vacature »

.NET developer

Functie Als senior .NET ontwikkelaar en aankomend lead developer ben jij in één van de drie development teams verantwoordelijk voor het volgende: • Jij hebt een oogpunt op modernisering en bent verantwoordelijk voor de technische staat en architectuur van de applicatie; • Jij bent verantwoordelijk voor het reviewen van de technische haalbaarheid van verschillende onderwerpen; • Jij bent verantwoordelijk voor een goede aansluiting binnen het multidisciplinaire team en de bijbehorende taken; • Jij bent verantwoordelijk voor het aandragen van verbetervoorstellen en ontwikkelstandaarden in zowel de techniek als architectuur; • Jij bent meewerkend voorman en ondersteunt en coacht jouw team op

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 »

PHP Developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

Software Developer

Functie omschrijving Psst hé jij daar! Op zoek naar een nieuwe uitdaging als developer? Wacht niet langer en reageer direct. In deze functie ga je bij een familiebedrijf werken als developer. Je gaat maatwerk software ontwikkelen met de Microsoft stack. Je gebruikt technieken als C#, ASP.NET en MVC. Je werkt in een leuk team van andere developers. Je krijgt veel vrijheid in je werk en kan flexibel werken. Dagje thuiswerken? Geen probleem! Daarnaast is er veel ruimte om écht mee te denken met het bedrijf en met de klanten. Bedrijfsprofiel Deze organisatie is gevestigd in de regio van Boxtel. Vanaf

Bekijk vacature »
Bas Engel

Bas Engel

16/08/2012 22:11:15
Quote Anchor link
Ik ben echt wat je noemt een startende phper en probeer nu een login scriptje te bouwen. Het lukt al aardig maar nu loop ik toch echt tegen een probleem waar ik zel niet uitkom en hoopte ik dat iemand mij wil vertellen wat ik fout doe.

Op het moment dat ik wil uitloggen en klik op de submit button die ik hier voor aangemaakt heb lijkt het of ik succesvol ben uitgelogd echter als ik de browser niet afsluit en naar de link ga van de beveiligde pagina opent die de pagina daarna gewoon.

Dit is de code voor die ik heb voor mijn <html> tag:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
session_start();
if (!isset($_SESSION["email"])){
    $tekst = "U bent nog niet ingelogd, <a href=\"../../index.php\">klik hier</a> om in te loggen";
    echo($tekst);
    exit();
}

if (isset($_POST['u'])){
session_unset(); // alle variabelen vrijgeven
session_destroy();} // sessie afsluiten
?>


Ik hoop dat iemand mij even in de juiste richting wil brengen.
 
PHP hulp

PHP hulp

17/05/2024 19:08:22
 
Jelle Hi

Jelle Hi

16/08/2012 22:17:56
Quote Anchor link
Weet niet of je ook cookie's gebruikt?

zo ja, probeer dit:
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
session_destroy();  

        // cookies deleten
        if(isset($_COOKIE['gebruikersnaam'])) {
              setcookie("gebruikersnaam", "", time(), "/");
        }
        if(isset($_COOKIE['wachtwoord'])) {
              setcookie("gebruikersnaam", "", time(), "/");
        }
        if(isset($_COOKIE['voornaam'])) {
              setcookie("voornaam", "", time(), "/");
        }
        if(isset($_COOKIE['achternaam'])) {
              setcookie("achternaam", "", time(), "/");
        }


pas wel ff je cookie-data aan
 
- SanThe -

- SanThe -

16/08/2012 22:22:54
Quote Anchor link
Ik gooi de session altijd weg en maak direct een nieuwe met een nieuw id.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
// begin van je script
session_start();


// bij uitloggen
session_destroy();
session_id(sha1(microtime()));
session_start();
?>
 
Bas Engel

Bas Engel

16/08/2012 22:48:27
Quote Anchor link
Thanks voor de snelle reacties.

Ik kom er alleen nog steeds niet helemaal uit, ik krijg nu de volgende melding als ik probeer in te loggen op mijn beveiligde pagina:

Parse error: syntax error, unexpected $end in /home/wp00216/domains/qepa.nl/public_html/admin/login/login_on/index.php on line 53

regel 53 op deze pagina is de </html> tag, hierbij de code zoals ik hem nu heb staan.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
session_start();
if (!isset($_SESSION["email"])){
    $tekst = "U bent nog niet ingelogd, <a href=\"../../index.php\">klik hier</a> om in te loggen";
    echo($tekst);
    exit();
}

if (isset($_POST['u'])){
session_destroy();  
session_id(sha1(microtime()));
session_start();
?>
 
Thomas de vries

thomas de vries

16/08/2012 22:52:51
Quote Anchor link
unexpected $end betekend dat je een }(Accolade) teken mist.
 
- SanThe -

- SanThe -

16/08/2012 22:55:12
Quote Anchor link
Je sluit if() niet af. Je hebt een { maar geen } achter de if().
 
Bas Engel

Bas Engel

16/08/2012 23:09:53
Quote Anchor link
De foutmelding is nu weg, die had ik over het hoofd gezien. Maar ik blijf het probleem houden dat als ik uitgelogd ben en weer naar de url van de beveiligde pagina ga ik die gewoon kan benaderen. Dit is zoals de code er nu uitziet:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
session_start();
if (!isset($_SESSION["email"])){
    $tekst = "U bent nog niet ingelogd, <a href=\"../../index.php\">klik hier</a> om in te loggen";
    echo($tekst);
    exit();
}

if (isset($_POST['u'])){
session_destroy();  
session_id(sha1(microtime()));
session_start();
}

?>
 
- SanThe -

- SanThe -

16/08/2012 23:29:55
Quote Anchor link
Bas Engel op 16/08/2012 23:09:53:
.. dat als ik uitgelogd ben en weer naar de url van de beveiligde pagina ga ..


En hoe check jij daar of je toegang hebt?
 
Bas Engel

Bas Engel

16/08/2012 23:32:43
Quote Anchor link
Door de link te kopieren als ik ingelogd ben en in de adresbalk plak als ik ben uitgelogd.
 
- SanThe -

- SanThe -

16/08/2012 23:41:26
Quote Anchor link
Ik bedoel in het bestandje.
 
Bas Engel

Bas Engel

16/08/2012 23:48:49
Quote Anchor link
Door:

if (!isset($_SESSION["email"]))

Of bedoel je iets anders?
 
- SanThe -

- SanThe -

16/08/2012 23:50:02
Quote Anchor link
if (!isset($_SESSION["email"])) .... en dan mag je verder?
 
Bas Engel

Bas Engel

17/08/2012 00:19:36
Quote Anchor link
Is dat niet goed dan?
 

17/08/2012 00:23:25
Quote Anchor link
!isset betekent eigenlijk zoveel als, als waarde niet bestaat... dan. Dus ik denk dat je moet kijken of $_SESSION['email'] werkelijk bestaat.

Verder zou ik ook geen link aan de gebruiker tonen, maar de gebruiker gewoon naar de inlog pagina sturen (persoonlijke keuze).

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
<?php session_start();

if(isset($_SESSION['email'])) {
    echo 'Ingelogd.';
}


else {

    /**
     * Stuur hier de gebruiker naar de inlog pagina:
     */

    header('Location: http://example.nl/');
    exit();
    
}


?>


Tevens zou ik twee sessies aanmaken:
1. $_SESSION['user']['id'] -> ID van de gebruiker,
2. $_SESSION['user']['session'] -> persoonlijke sessie van de gebruiker

Op iedere pagina kijk je dan of die sessie nog in de database staat en natuurlijk match met $_SESSION['user']['id']. Op de inlog pagina moet je $_SESSION['user']['session'] ook in de database opslaan samen met $_SESSION['user']['id'].

Daarnaast zou ik kijken of de gebruiker niet te lang inactief is. Daarmee bedoel ik als een gebruiker in 15 à 30 minuten geen enkele pagina heeft herladen, dat hij/zij naar de inlog pagina wordt doorverwezen.
Gewijzigd op 17/08/2012 04:01:19 door
 
Chris PHP

Chris PHP

17/08/2012 07:41:57
Quote Anchor link
Hoe ik meestal test of de sessie ook echt beeindigd is is zo.

Op het login scherm print_r($_SESSION); zetten. Als je succesvol bent uitgelogd zal het een lege array geven. Ben je nog wel ingelogd zal er in jou geval email => [email protected] staan. Waar uiteraard [email protected] jou email is.

Ik redirect mensen altijd weer naar het inlogscherm zodra er uitgelogd wordt, meestal zijn mijn login systemen voor ons eigen CMS. Maar als het gewoon een login is, zet je print_r($_SESSION); gewoon op de pagina waar je heen gaat als mensen uitloggen.
 
Obelix Idefix

Obelix Idefix

17/08/2012 07:55:57
Quote Anchor link
Als de controle met !isset plaats vindt zoals in je code in je openingspost is het op zich goed. Als niet bestaat, dan melding.

Maar hoe controleer je op de beveiligde pagina?

Ten aanzien van je code nog wat opmerkingen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php    $tekst = "U bent nog niet ingelogd, <a href=\"../../index.php\">klik hier</a> om in te loggen";
    echo($tekst);
    exit();
?>

Zou ik korter schrijven:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
    $tekst
= 'U bent nog niet ingelogd, <a href="../../index.php">klik hier</a> om in te loggen;
    echo $tekst;
    exit();
?>

Let ook op ' (in php zoals bv echo) ipv " (voor HTML).
Of, nog korter, gewoon:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
echo 'U bent nog niet ingelogd, <a href="../../index.php">klik hier</a> om in te loggen;
exit();
?>

Waarom de exit eigenlijk? Je beeindigt daarmee het hele script (dus ook de verdere opmaak/layout). Hierdoor missen, volgens mij zaken als </body></html> (en mogelijk nog wat </div>'s).
Gewijzigd op 17/08/2012 07:58:15 door Obelix Idefix
 
Chris PHP

Chris PHP

17/08/2012 08:13:58
Quote Anchor link
Obelix,

Zijn originele !isset lijkt mij niet goed. Hij krijgt netjes een melding wanneer er niet is ingelogd, maar wat nu als er wel succesvol is ingelogd? Lijkt me dat hier nog een else moet zijn die hem of doorverwijst naar de juiste pagina, of de pagina laat zien.
 
Erwin H

Erwin H

17/08/2012 08:57:20
Quote Anchor link
Volgens mij moet je eerst een onderscheid maken tussen sessie en het ingelogd zijn van de gebruiker. Dat is namelijk niet hetzelfde. Je kan namelijk prima een sessie per gebruiker hebben, zonder dat de gebruiker ingelogd is.

Ik heb gebruikers gegevens in de sessie staan die bepalen of een gebruiker ingelogd is of niet. Zo staat er bijvoorbeeld zijn user_id in en misschien ook nog wel zijn username of andere settings. Op het moment dat een pagina wordt opgeroepen wordt er gekeken of de gebruiker is ingelogd, namelijk door te controleren of er een user_id is gegeven in de sessie. Zo nee, dan is de gebruiker niet ingelogd (de sessie bestaat dus wel!).

Enige wat je dan hoeft te doen met het uitloggen is de gegevens uit de sessie halen die bepalen of de gebruiker is ingelogd. In bovestaande geval dus user_id. Een log out script zou dus in feite zo simpel kunnen zijn als:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
unset( $_SESSION['user_id'] );
?>


De volgende keer dat een pagina wordt opgeroepen bestaat de user_id niet en dus is er geen gebruiker ingelogd.
 



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.