Session handler

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

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 »

.NET Developer

Dit ga je doen (Door)Ontwikkelen van het applicatielandschap; (Door)Ontwikkelen van microservices; Bouwen van nieuwe functionaliteiten; Verbeteringen aandragen voor het applicatielandschap; Sparren met de business. Hier ga je werken De organisatie is werkzaam in de financiële dienstverlening met meer dan 200 medewerkers en meer dan 250.000 eindgebruikers is het een van de grotere binnen haar branche. Je komt te werken in een team waarmee je verantwoordelijk bent voor het ontwikkelen en onderhouden van de financiële applicaties binnen de organisatie, denk hierbij aan het bouwen en onderhouden van portalen. Als .net developer ga jij het development team ondersteunen met de transitie naar

Bekijk vacature »

Senior .NET developer

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

Bekijk vacature »

PHP ontwikkelaar

Functie Jij komt te werken in een development team van 9 man. Het grootste deel doet back end development en daarnaast is er 1 teamlead en 1 tester in het team. Dit Agile team is van groots belang voor de organisatie omdat zij voornamelijk alle eigen systemen in-house ontwikkelen. Naast het door ontwikkelen van het bestaande platform en de software die daarbij komt kijken, zul jij je ook bezighouden met het realiseren en opzetten van nieuwe projecten binnen het bedrijf. Je staat nauw met de klant in contact om zo hun wensen zo goed mogelijk te kunnen realiseren. Daarnaast ontwikkel

Bekijk vacature »

Java Developer

Functie Wat ga je doen als Java developer? Jij komt terecht binnen een informeel team waarin je verantwoordelijk bent voor de backend systemen voor grote klanten als Ziggo en KPN. Als Medior Java developer werk je in teamverband en soms individueel. Gedurende de werkweek zal je veelvuldig sparren met je collega’s voor een goede implementatie van de software. Ben jij een echte Java developer? Ben je geïnteresseerd in de nieuwste technieken en de laatste ontwikkelingen? Dan ben je hier aan het juiste adres! Eisen Wat wordt er van jou verwacht? • Minimaal HBO/WO denk- en werkniveau; • Analytisch sterk, open

Bekijk vacature »

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 »

Klein team zoekt grote fullstack .NET developer to

Bedrijfsomschrijving Deze werkgever is marktleider in de Benelux en is Europees ook al aardig aan de weg aan het timmeren. Ze voorzien technische winkels van apparatuur om producten een langer leven te geven. Hiermee reduceren ze flink wat CO2 uitstoot en dat is natuurlijk goed voor iedereen! IT speelt een belangrijke rol in de bedrijfsvoering en de applicaties zijn van goed niveau. Als fullstack .NET developer ga jij je bijdrage leveren aan het verder verbeteren van de applicaties en de interne processen. Ze zijn nu met ruim 50 medewerkers in totaal en de afdeling development bestaat uit een 5tal developers.

Bekijk vacature »

.NET developer

Functie Als .NET developer start jij in een development team met één Senior .NET developer en één junior .NET developer. Als team zijn jullie verantwoordelijk voor het schrijven van software voor onze toonaangevende Automatiseringssystemen. Jij gaat aan de slag met de onderhoud van de kernsoftware, ondersteund de software van derden door het gebruik van onze webservices en als team zijn jullie verantwoordelijk voor het ontwikkelen van onze backend oplossingen. Wij maken op dit moment veel gebruik van .NET met ASP.NET. Komend kwartaal gaan wij wel gedeeltelijk overstappen naar .NET Core. Verder werken wij ook met SOAP, REST, JSON, HTML5, CSS3

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 »

PHP Developer

Als PHP Developer bij Coolblue zorg je ervoor dat onze webshops elke dag een beetje beter zijn. Wat doe je als PHP Developer bij Coolblue? Als PHP Developer werk je met andere development teams samen om onze webshop zo optimaal mogelijk te laten werken en onze klanten blij te maken. Hoewel je een PHP Developer bent, sta je open om C# of Typescript in te zetten of te leren. Ook PHP Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om te doen pure PHP code schrijven. Samenwerken met de klantreiziger om onze klanten

Bekijk vacature »

Software Ontwikkelaar C# .NET

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 Amersfoort 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. Bedrijfsprofiel De organisatie waar je voor gaat werken heeft een onafhankelijk dataplatform ontwikkelt voor de agrarische sector.

Bekijk vacature »

Junior .NET developer

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

Bekijk vacature »

Front-end developer wanted! (Angular, React, Vue.j

Functie Under the guidance of 3 account managers, one of whom will be your point of contact within your expertise, you will start working for various clients. He or she will help you find a suitable and challenging assignment. Naturally, they will take your situation, experience and (technical) ambitions into account. The assignments last one to two years on average. This allows you to really commit to a project and make an impact as a consultant. Besides the assignment, you will regularly meet your colleagues from the IT department to share knowledge or discuss new trends, for example. Master classes

Bekijk vacature »

C# Unity Developer

Functieomschrijving Ontwikkel jij mee door applicaties te bouwen die bijdragen aan het optimaliseren van processen? Voor een erkende werkgever in regio Tilburg zijn wij op zoek naar een Unity C# Developer die graag de uitdaging aangaat! Jouw werkzaamheden zullen er als volgt uitzien: Je bent een luisterend oor naar klanten en vertaalt hun wensen door naar bruikbare software; Je werkt aan innovatieve softwareoplossingen voor het verbeteren en/of vernieuwen van processen; Je bent verantwoordelijk voor het uitvoeren van updates/aanpassingen aan de reeds draaiende applicaties. Bedrijfsprofiel Je komt te werken voor een internationale werkgever in regio Tilburg. Samen met een vooruitstrevend team

Bekijk vacature »

Full stack developer

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »
Citroen Anoniem Graag

Citroen Anoniem Graag

23/12/2007 23:14:00
Quote Anchor link
Beste mensen,

vandaag heb ik mijn eigen session handler geschreven (op basis van een bestaande, op de site te vinden). Een klein detailtje is echter dat hij niet doet wat ik wil dat hij doet. Hij doet namelijk niets, en hij zou de data in de database moeten opslaan.

Zo roep ik de handler op:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
    session_set_save_handler('open','close','read', 'write', 'destroy', 'clean');
    session_start();
    $_SESSION['Do'] = 'Bloe';    //ff testen
    
    //dit onderstaande returnt user, dus dat is juist.

    echo ini_get('session.save_handler');
?>


Er komt niet in de database te staan.

Btw session_set_save_handler('open','close','read', 'write', 'destroy', 'clean'); geeft een true terug. en als ik if($_SESSION['Do'] = 'Bloe'){echo 'goed';} doe krijg ik goed op mijn scherm dus dat klopt ook.

Dan nu de handler itself:
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
<?php
function open($sPath = '', $sName = '')
{

    $sGebruikersnaam = 'root';
    $sWachtwoord = '***********';
    $sHost = 'Localhost';
    $sDb = 'session_handler';

    if($iLink = mysql_connect($sHost, $sGebruikersnaam, $sWachtwoord))
    {

        return mysql_select_db($sDb, $iLink);
    }

    else
    {
        return false;
    }
}

function
close()
{

    return mysql_close();
}

function
read($iId)
{

    $qLeesSession = "SELECT waarde FROM sessions WHERE id = '".mysql_real_escape_string($iId)."';";
    $rLeesSession = mysql_query($qLeesSession);
    
    if($rLeesSession)
    {

        if(mysql_num_rows($rLeesSession) == 1)
        {

            $aLeesSession = mysql_fetch_row($rLeesSession);
            return $aLeesSession[0];
        }

        else
        {
            return false;
        }
    }

    else
    {
        return false;
    }
}

function
write($iId, $sData)
{

    $qSchijfSession = "INSERT INTO sessions (s_id, maak_datum, waarde) VALUES (".mysql_real_escape_string($iId).", NOW(), '".mysql_real_escape_string($sData)."');";
    $rSchijfSession = mysql_query($qSchijfSession);
    
    if($rSchijfSession)
    {

        if(mysql_affected_rows() == 1)
        {

            return true;
        }

        else
        {
            return false;
        }
    }

    else
    {
        return false;
    }
}

function
destroy($iId)
{

    $qVerwijderSession = "DELETE FROM sessions WHERE s_id = ".mysql_real_escape_string($iId).";";
    $rVerwijderSession = mysql_query($qVerwijderSession);
    
    if($rVerwijderSession)
    {

        if(mysql_affected_rows() == 1)
        {

            return true;
        }

        else
        {
            echo mysql_error();
        }
    }

    else
    {
        echo mysql_error();
    }
}

function
clean()
{

    $qOpschonen = "DELETE FROM sessions WHERE maak_datum < (NOW() - INTERVAL 15 MINUTE);";
    return mysql_query($qOpschonen) or die(mysql_error());
}

?>


Totslot nog de database dump:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
CREATE TABLE `sessions` (
  `s_id` char(26) NOT NULL,
  `maak_datum` datetime NOT NULL,
  `waarde` mediumblob NOT NULL,
  PRIMARY KEY  (`s_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;


Ik krijg geen foutmeldingen..

Wie help mij, alvast bedankt!

Groetjes Freek
Gewijzigd op 01/01/1970 01:00:00 door Citroen Anoniem Graag
 
PHP hulp

PHP hulp

26/05/2026 14:15:48
 
Citroen Anoniem Graag

Citroen Anoniem Graag

24/12/2007 12:34:00
Quote Anchor link
Ik ben er zelf al uit. De queries gingen fout. Dit :
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
INSERT INTO sessions (s_id, maak_datum, waarde) VALUES (".mysql_real_escape_string($iId).", NOW(), '".mysql_real_escape_string($sData)."');";


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
INSERT INTO sessions (s_id, maak_datum, waarde) VALUES ('".mysql_real_escape_string($iId)."', NOW(), '".mysql_real_escape_string($sData)."');";


Want het id bestaat ook uit letters, en niet uitsluitend uit cijfers.

Wat ik wel raar vind is dat ik geen error krijg, want hij geef wel zeker een false terug. Ik wil gewoon graag een foutmelding krijgen als het niet lukt....
Hmm krijg idee, ga ff aan de slag met trigger_error() wie weet....

NB. Ik had een ideetje als ik in de database een rij met ip (van de gebruiker) erbij maak, dan sluit ik session hijacking toch uit. Want als je de cookie dan weet te veranderen in een geldig session_id dan match het ip adres ook niet. Dan zou je eventueel ook nog de browser kunnen opslaan. o.i.d. Klopt mijn theorie dat ik session hijacking dan uitsluit??
Graag jullie meningen.
 
Jan geen

Jan geen

24/12/2007 12:41:00
Quote Anchor link
Als je het ip ook opslaat kan alleen de persoon met dat ip de sessie opvragen, klopt dus.
 
Frank -

Frank -

24/12/2007 12:45:00
Quote Anchor link
Quote:
Wat ik wel raar vind is dat ik geen error krijg, want hij geef wel zeker een false terug. Ik wil gewoon graag een foutmelding krijgen als het niet lukt....
Flikker MySQL dan weg, die geeft standaard slechts zelden een foutmelding. MySQL zal zijn uiterste best doen om jouw data naar de klote te helpen en pas wanneer dat niet lukt, geeft MySQL een foutmelding. Waarschijnlijk uit pure frustratie!

Maar alle gekheid op een stokje, MySQL geeft zelden een foutmelding, dat mag je eerst zelf instellen. Zie deze tutorial.

Het gebruik van een betere database is altijd aan te raden, denk bv. aan PostgreSQL een écht gratis opensource database (i.t.t. MySQL!) en wat mogelijkheiden betreft vergelijkbaar met Oracle.
 
Citroen Anoniem Graag

Citroen Anoniem Graag

24/12/2007 12:49:00
Quote Anchor link
MySQL geeft keurig een foutmelding als ik de functie mysql_error gebruik. maar ik wil dat php een foutmelding geeft als het schrijven van bv de session niet lukt. Als de functie write dus false retourneerd, wat gebeurt bij een mislukte query, wil ik dat php gaat protesteren.
 
Citroen Anoniem Graag

Citroen Anoniem Graag

25/12/2007 13:50:00
Quote Anchor link
bumbje
 
Joren de Wit

Joren de Wit

25/12/2007 13:58:00
Quote Anchor link
Dat kun je natuurlijk afvangen in je script:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
if(write($iId, $sData) === false))
{

    echo 'Ik protesteer!';
}

?>

Er zijn natuurlijk vele andere manieren waarop je een foutmelding kunt geven (denk aan trigger_error en het gebruik van exceptions), maar dat is helemaal aan jou. Wellicht dat je deze tutorial over foutafhandeling er even op na wilt slaan...
 
Citroen Anoniem Graag

Citroen Anoniem Graag

25/12/2007 16:51:00
Quote Anchor link
Hmm, exceptions gaat niet lukken want php.net zegt:
Quote:
As of PHP 5.0.5 the write and close handlers are called after object destruction and therefore cannot use objects or throw exceptions. The object destructors can however use sessions.

Die oplossing die jij geeft kan ook niet, want ten eerste weet je het id niet (owjah toch wel session_id()) Maar dan wat moet er bij data komen te stan iets als NaamS:|waarde o.i.d

Ik wil gewoon dat als ik dit doe.
$_SESSION['iets'] = 'waarde';

en er gaat een query fout, dat php dan zegt, hé stop eens ff ik kreeg een false terug. Er ging iets mis!
 
Joren de Wit

Joren de Wit

25/12/2007 18:44:00
 



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.