Session handler

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Back-end Developer (Permanent position with the em

Bedrijfsomschrijving Dutch specialist in technical installation materials. Functieomschrijving Purpose of the position: Our client is looking for a Back-end Developer who, together with the rest of the energetic and dynamic team, is responsible for the development and management of the website. This not only concerns the development and management of the current website, but also the development of a new Headless Commerce Platform to keep the customer's website Future proof. Within the IT department, there is a real DevOps culture and the commerce team is at the forefront and tries to implement continuous improvements. Most important tasks: ï‚· Designing and

Bekijk vacature »

Software Developer

Functie omschrijving Veel begeleiding en de kans om je verder te ontwikkelen als software developer. Dat kunnen wij jou bieden bij deelname aan deze leuke traineeship. Je krijgt een mentor toegewezen die jou alle kneepjes van het vak leert. Heb jij al wat ervaring als software developer? Daar worden wij heel blij van! Lees snel verder! Bedrijfsprofiel Als software developer neem je deel aan een trainings programma in de omgeving van Haarlem waar je persoonlijk wordt begeleidt, zodat je alle kneepjes van het vak leert. Aan de hand van jouw kennis en ervaring krijg je een persoonlijk opleidingstraject. Je gaat

Bekijk vacature »

Database Developer

Functie omschrijving Voor een logistieke dienstverlener in omgeving Zuid Beijerland zijn wij op zoek naar versterking. Weet jij als geen ander systemen aan elkaar te koppelen en heb jij goede kennis van SQL en UML, lees dan snel verder! Jouw taken zien er als volgt uit: Je bent in deze rol voornamelijk verantwoordelijk voor het bouwen, implementeren en beheren van koppelingen tussen de bestaande systemen (zowel business 2 business als application 2 application). Daarnaast inventariseer je de wensen van in- en externe klanten, die je vervolgens samen met je collega's, vertaalt naar technische specificaties, die jullie zelf ontwikkelen en implementeren.

Bekijk vacature »

Back-end Developer

Functieomschrijving Voor een erkende werkgever in de regio van Middelburg zijn wij op zoek naar een enthousiaste PHP / Symfony Developer. Een ambitieus persoon die het gemotiveerde development team komt versterken met het realiseren van nieuwe en complexe projecten. Ben jij op zoek naar een baan met veel uitdaging binnen een snelgroeiend e-commerce bedrijf, waar je de tijd en ruimte krijgt voor professionele groei? Dit ga je doen: Je bent verantwoordelijk voor de beheer en ontwikkeling van de serviceportal in Symfony en de webshops in de tweede versie van Magento; Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten;

Bekijk vacature »

Software developer (Python)

Functie Je komt te werken in het IT-team bestaande uit de Lead developer en 4 (medior/senior) developers. Gezamenlijk werken jullie aan de verbetering en uitbreiding van de software. Binnen het development team is er veel vrijheid en zelfstandigheid, zonder dat ze hiermee afdoen aan de kwaliteit. Zo hebben ze elke ochtend een korte stand-up (10:00 uur) en houden ze zo nu en dan pair-programming sessies. Ook is er een hele professionele ontwikkelcyclus waarbij code altijd eerst door een collega wordt getest voordat het naar deployement gaat. Je hebt in je werk oog voor kwaliteit, risico’s en het klantbelang. Communicatie met

Bekijk vacature »

Low Code Developer voor o.a. overheidsprojecten!

Bedrijfsomschrijving Wil jij ook behoren tot de specialist in Low Code? Dan zou ik zeker aanraden om verder te lezen. Deze organisatie is ooit opgericht door twee studenten en is inmiddels uitgegroeid tot een serieuze werkgever met een groot aanzien op Low Code projecten. De sfeer is echter niet veranderd, er heerst een informele sfeer met een open deuren beleid, en hierin mag de eigen bar natuurlijk niet ontbreken. Momenteel maakt deze organisatie een flinke groei door en hier kan jij natuurlijk niet bij ontbreken. Daarom ben ik op zoek naar Low Code Developers met een degelijke technische achtergrond. Kennis

Bekijk vacature »

Junior Front end developer

Functie Jij als developer gaat ons helpen onze producten verder te ontwikkelen en in te zetten in de markt. Op dit moment bestaat ons SaaS product uit 3 componenten die zowel los als in een pakket gekocht kunnen worden. Het gaat hier om een online kaartapplicatie, een workflow tool en een monitoring tool. Momenteel zijn wij 3 jaar geleden gestart met de ontwikkeling. De tech-stack waarmee we werken is voornamelijk Javascript, Vue.js en Python. Daarnaast gebruiken wij FaundaDB als database en werken we veel met GIS applicaties. De uitdaging die we momenteel hebben is dat we momenteel een intern team

Bekijk vacature »

Full-stack developer

Als Full-stack developer bij KUBUS houd je je bezig met het ontwikkelen van de (web)applicatie en services van BIMcollab. Samen met je SCRUM team werk je aan zowel de front- als de back-end. Als softwarebedrijf bevindt KUBUS zich in een unieke positie. We bouwen aan onze eigen producten die wereldwijd door tienduizenden gebruikers worden gebruikt. Ons bedrijf heeft precies de juiste grootte: groot genoeg om echt impact te maken in de markt, maar klein genoeg om als individuele ontwikkelaar invloed uit te kunnen oefenen en echt het verschil te kunnen maken. Ons ontwikkelteam bestaat uit ruim 40 ontwikkelaars, testers, scrum

Bekijk vacature »

.NET developer

Functie Als ervaren .NET ontwikkelaar start jij in één van onze vier scrumteams. Met 30 ontwikkelaars werk jij aan de doorontwikkeling van ons core product. Ook werkt jouw team aan maatwerkoplossingen op aanvraag van de klant en op projectbasis. Wij vinden het erg belangrijk dat onze ontwikkelaars met plezier naar werk gaan. Een deel hiervan ligt uiteraard bij jezelf, als jij ontwikkelen niet leuk vindt, ben jij bij ons echt aan het verkeerde adres. Jouw team bestaat namelijk uit een groep gepassioneerde vakidioten die dit werk doen omdat dit eerst een hobby was! Daarnaast wordt er intern rekening gehouden met

Bekijk vacature »

Medior Java developer

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Junior Fullstack Developer

Functie omschrijving Heb jij je universitair diploma Informatica afgerond en ben jij op zoek naar een startersfunctie waar jouw ontwikkeling in een hoog vaandel staat? Voor een softwarebedrijf in Amsterdam zijn wij op zoek naar een Junior Fullstack Developer. Je begint met een op maat gemaakte training om de kennis bij te spijkeren die jij nog mist. Uiteraard leer je het meeste tijdens je werk, maar de training geeft je hiervoor alvast de juiste handvatten. Je kunt het volgende verwachten! Jij ontwikkelt in technieken als Java, Javascript en SQL. Je werkt hierbij volgens de Agile/Scrum methode; Na het afronden van

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 »

Senior Front-end Developer

Dit ga je doen Met behulp van diverse programmeertalen ontwikkelen van Front-end software; Het begeleiden van het front-end team; Het oplossen van incidenten; Het bijhouden van een backlog; Je hebt een actieve bijdrage in de wekelijkse overleggen met de omliggende teams; Je houdt trends bij en adviseert het management hierover waar nodig; Helder communiceren met de stakeholders om hen zo mee te nemen in projecten en laten inzien wat de duur en toegevoegde waarde van bepaalde projecten is. Hier ga je werken Deze organisatie heeft circa 40 miljoen bezoekers per maand en heeft innovatie hoog in het vaandel staan. Het

Bekijk vacature »

Front-end developer E-Commere

Functie E-commerce is een ‘’snelle’’ wereld. Om hierin continu voorop te blijven omarmen ze in een vroeg stadium nieuwe technieken. Een webshop is nooit af en kan altijd beter, sneller en efficiënter. Tegelijkertijd hebben ze vanaf hun oprichting altijd vastgehouden aan kwaliteit boven snelheid, en dit loont. Als front-end developer heb je een adviserende rol en sta je aan het eindpunt van alles wat met designs te maken heeft. Je overlegt met klanten en collega’s, en zet je in om ideeen om te zetten tot unieke concepten. Je bent het aanspreekpunt voor de klant en bewaakt tevens de planning. Eisen

Bekijk vacature »

Laravel Developer

Functie omschrijving Voor een gave organisatie in de buurt van Den Bosch zoek ik een PHP developer. Het is van belang dat je kennis/ervaring hebt met het framework Laravel. Jij gaat in deze functie software applicaties ontwikkelen. Deze software projecten zijn heel divers, en deze organisatie maakt software, van A tot Z. Klanten kunnen in elke sector werkzaam zijn, van profit tot non-profit. Andere taken zijn onder andere: documentatie schrijven over applicaties/uitleg geven over software en applicaties/ klantcontact over bestaande applicaties/applicaties optimaliseren. Bedrijfsprofiel Deze organisatie zit in de regio van Den Bosch en is een klein bedrijf. Er werken circa

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

24/12/2024 13:10:07
 
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.