veilige cookies

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Front-end developer Supply Chain Angular, ReactJS,

Functie Het development team bestaat momenteel uit 9 fullstack (Python en .NET) developers. Binnen het team ga jij je toespitsen op het creëren van de optimale toegankelijkheid en user experience. Om dit voor elkaar te krijgen zul je ontwerpen, programmeren, testen en implementeren. Het hele proces dus! Maar ook bijvoorbeeld meedenken over strategie en design. Hierin krijg je veel vrijheid om de functie naar eigen inzicht in te vullen en te pionieren. Alle data die wordt gebruikt is zichtbaar in een webapplicatie, geschreven in Angular en React. Momenteel zijn ze bezig om de dashboards anders vorm te geven en de

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 »

.NET Developer

Dit ga je doen Programmeren in .NET, Javascript & C# en ontwikkelen in Web Services, Windows Services en MS SQL Server; Zelfstandig verbanden maken Analyseren, testen, bugs fixen, reviewen en rapporteren; Juiste prioriteiten stellen en verantwoordelijkheid nemen; Op architectuur niveau meedenken; Af en toe klanten bezoeken. Hier ga je werken Voor onze relatie zijn wij opzoek naar een .NET ontwikkelaar met minimaal 3 jaar werkervaring. Je komt te werken in een groeiend bedrijf met betrokken collega's die zorgen voor een familiaire sfeer op de werkvloer. Als .NET ontwikkelaar word jij vanaf de eerste werkdag betrokken bij het gehele ontwikkelproces. De

Bekijk vacature »

Software Developer C# - Deventer

Software Developer C# – Deventer Bijdragen aan de toekomst van het onderwijs! Ben jij op zoek naar een dynamische omgeving waar vol enthousiasme wordt gewerkt aan software voor interactieve dashboard- en analysetoepassingen ter verbetering van het onderwijs? Dan zijn wij het bedrijf voor jou! TIG is een bedrijf met een informele en ondernemende werksfeer, waarbij goede ideeën snel leiden tot concrete acties. Wij zijn een software ontwikkelorganisatie en focussen ons op het ontwikkelen en implementeren van oplossingen voor het leveren van managementinformatie, datavisualisatie en analyses voor het onderwijs. Met onze dashboard- en analyseoplossingen zetten scholen gegevens om naar betekenisvolle informatie.

Bekijk vacature »

.NET developer

Functie Als .NET developer werk jij samen in een multidisciplinair ontwikkel team met 1-2 Senior .NET developers, twee front-end developers, Data Scientists en één UX designer. Als team werken jullie aan het ontwikkelen van een Cloud based applicatie en aan het stabieler maken van deze applicatie. Ook unit testing gaat erg belangrijk worden in jouw nieuwe functie. Samen met de Senior .NET ontwikkelaar wordt jij verantwoordelijk voor het ontwikkelen van de API. Jullie werken met veel data en incidenteel komen er ook data vraagstukken en zullen er wat queries gedraaid moeten worden. Dit betekend dat jij veel gaat werken met

Bekijk vacature »

PHP Developer

Functieomschrijving Vanuit het hoofdkantoor in de regio van Bergen op Zoom ben je als PHP Developer niet alleen gefocust op het ontwikkelen van Software. Daarnaast ben je ook voortdurend bezig met het zoeken naar nieuwe mogelijkheden en innovaties die essentieel kunnen zijn voor de efficiëntie van software ontwikkeling. Je deelt veel kennis en informatie met het team en ontvangt deze dan ook graag terug. Techstack: PHP, Symfony & mySQL. Bedrijfsprofiel Deze uitdagende opdrachtgever is ruim 20 jaar actief in de regio Bergen op Zoom. Het vooruitstrevende team staat de hele dag voor je klaar om je te helpen en ondersteunen.

Bekijk vacature »

SAP Integratie Ontwikkelaar

Ben jij ambitieus in de verdere ontwikkeling van SAP binnen HANOS, en heb je kennis van SAP PI, CPI (SAP integration suite) en of andere middleware tooling? Dan ben jij mogelijk onze nieuwe SAP Integratie (middleware) Ontwikkelaar! Lees snel verder en solliciteer! Wat ga je doen? Als SAP Financieel Consultant ben je, als deel van een gedreven team van interne SAP consultants, de schakel tussen de gebruikersorganisatie en ICT. Je draagt proactief bij aan een optimale aansluiting van de SAP-functionaliteit (een applicatielandschap met o.a. Suite on HANA, Fiori, Hybris, C4C en BO), op de bedrijfsprocessen. Verder ondersteun je de HANOS

Bekijk vacature »

Junior .NET developer

Functie Wij hebben drie scrumteams. Het eerste team focust zich op het stukje hardware wat wij in huis doen. Zij maken als team o.a. gebruik van C++. De andere twee scrumteams zijn allebei bezig met data verwerking en maken hierbij in de backend gebruik van C# .NET / .NET Core. Het verschil tussen deze teams is dat één team de data verwerking doet voor de mobiele applicatie. Zij werken hierbij dus ook met Xamarin. Het andere team focust zich op de webapplicaties en maakt hierbij ook gebruik van ASP.NET MVC. Op basis van jouw ambities en kwaliteiten kijken wij samen

Bekijk vacature »

PHP ontwikkelaar

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 »

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 »

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 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. Ze zijn wereldwijd de grootste speler en lopen voorop met het automatiseren van alle processen van de warehouses. Op dit moment wordt er nog gebruik

Bekijk vacature »

Laravel PHP developer in een jong team

Bedrijfsomschrijving Als je op zoek bent naar een werkplek waar plezier en uitdaging hand in hand gaan, dan is dit bedrijf de juiste keuze voor jou. Hier kun je werken aan uitdagende projecten en krijg je als developer veel verantwoordelijkheid. Het bedrijf waardeert kwaliteit boven kwantiteit en richt zich op het ontwikkelen van hoogwaardige applicaties en websites waar klanten enthousiast over zijn. Dit bedrijf is vooruitstrevend en streeft naar het leveren van de best mogelijke resultaten voor hun klanten. Als medior PHP ontwikkelaar met 3 jaar ervaring ben jij de persoon die we zoeken. Je krijgt hier de kans om

Bekijk vacature »

Front end developer

Functie Jij als front end developer gaat werken binnen de teams van onze klant, uiteraard met alle moderne technieken. Opdrachten worden echt gericht op jouw leerdoelen en jouw behoeftes. Wij hebben een omgeving gecreëerd waarin je echt jezelf kan zijn en waar echt gekeken wordt naar jouw voorkeuren. Maak je een fout? Geen probleem, leer ervan en dan ga weer door. Door de variëteit aan werk kun je in verschillende omgevingen een kijkje nemen en dus jezelf snel ontwikkelen. Eisen Je bent communicatief vaardig en houdt van een dynamische omgeving Je hebt HBO werk- en denkniveau Je hebt gedegen kennis

Bekijk vacature »

Back-end Developer C#

Functie omschrijving We are looking for a dutch native speaker Ben jij een ervaren back-end developer, die graag in een in-house functie wil werken? Passen de woorden innovatie, programmeren en teamspeler bij jou? Zoek niet verder en lees snel verder. Voor een echt familiebedrijf in de regio van Uden ben ik op zoek naar een back-end developer, die met name kennis heeft van C# en .NET. Jij gaat de interne applicaties verder optimaliseren en nieuwe features ontwikkelen. Verder ga je de volgende werkzaamheden uitvoeren: Ondersteunen gebruikers; Uitvoeren van analyses van de software/applicaties; Maken van functionele ontwerpen en deze door vertalen

Bekijk vacature »

.NET Developer Azure

Dit ga je doen Het ontwerpen en bouwen van diverse applicaties (C#, ASP.NET, MVC); Het ontwikkelen van Webservices (WCF); Het meewerken aan de transitie naar Azure; Het samenwerken met collega's binnen een Scrumteam en meedenken over de User Stories; Het bouwen van unittesten; Meedenken over nieuwe tooling, ontwikkelingen en technologieën in de markt. Hier ga je werken Je komt te werken bij een organisatie die verantwoordelijk is voor de ontwikkeling van verschillende portalen. Deze portalen worden gebruikt door diverse partijen en jouw taak is om ervoor te zorgen dat deze optimaal functioneren. Je wordt onderdeel van een Scrumteam en werkt

Bekijk vacature »
Wouter bakker

wouter bakker

28/09/2010 20:32:34
Quote Anchor link
beste mensen,
ik ben bezig met een inlog systeem maar ik kom er dus echt niet uit met de cookie.
hij moet zo veilig mogelijk zijn alleen hoe???
dit zijn de gegevens:

<td><input id="cookie" type="checkbox" name="cookie" value="do" />Onthoud mijn gegegevens</td>

dus if($_POST['cookie']="do"){ cookie aanmaken enz.}

je hebt een user_id, gebruikersnaam,wachtwoord tot je beschikking ($user_id, $username,$password)

de vraag is dus of je even een kort scriptje wil maken over hoe je het cookie aanmaakt (incl. coderen enzo om het veiliger te maken), en als het aangemaakt is het verwerkt zodat je dan in dit voorbeeld je bijvoorbeeld welkom $username op het scherm te zien krijgt (ik wil het zo maken dat je dan niet meer hoeft in te loggen en dan gewoon welkom $username, en daaronder aanmelden (zonder iets in te vullen)

ik zal hier de cookie neerzetten die ik gebruikte alleen die klopt dus voor geen meter en is ook niet veilig...

code:
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
<?php
if(isset($_POST['submit'])) {
  
   $sql = "SELECT user_id,username,password,admin,active,cookie_pass FROM `account` WHERE username='".$_POST['username']."'";
   $query = mysql_query($sql);
   $row = mysql_fetch_object($query);
   $dbpass = htmlspecialchars($row->password);
   $userpass = md5($_POST['password']);
   $cookiepass = htmlspecialchars($row->cookie_pass);
   $user_id = htmlspecialchars($row->user_id);
   $userstatus = htmlspecialchars($row->admin);
   $useractief = htmlspecialchars($row->active);
   if($dbpass == $userpass) {
     if($useractief == 1) {
        $_SESSION['user_id'] = $user_id;
        $_SESSION['user_status'] = $userstatus;
        if($_POST['cookie'] == "do") {
      setcookie("user_id", $userid, time() + 365 * 86400);
      setcookie("user_password", $dbpass, time() + 365 * 86400);

    }

--
enz inloggen dus--

//als cookie al bestaat:

if(isset($_COOKIE['cookie_id'])) {
  $sql = "SELECT username FROM `account` WHERE user_id='".$_COOKIE['cookie_id']."'";
  $query = mysql_query($sql);
  $row = mysql_fetch_object($query);
  $username = htmlspecialchars($row->username);
}

?>


verder ben ik dus niet gekomen (of heb ik het verknoeid...)

zou iemand alsjeblieft het even maken zodat het werkt en veilig is??? je mag er alles bij halen, een hash van het ip, datum/tijd enz. als het dus maar werkt en veilig is^^

dit is de vorige versie (msschien heb ik het met wat hierboven staat wat verprutst...):

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
<?php
if(isset($_POST['submit'])) {
   // Login
   $sql = "SELECT user_id,username,password,admin,active,cookie_pass FROM `account` WHERE

username='"
.$_POST['username']."'";
   $query = mysql_query($sql);
   $count = mysql_num_rows($query);
   if($count == 1) {
    $row = mysql_fetch_object($query);
    $dbpass = htmlspecialchars($row->password);
    $userpass = md5($_POST['password']);
    $cookiepass = htmlspecialchars($row->cookie_pass);
    $user_id = htmlspecialchars($row->user_id);
    $userstatus = htmlspecialchars($row->admin);
    $useractief = htmlspecialchars($row->active);
    if($dbpass == $userpass) {
     if($useractief == 1) {
      $_SESSION['user_id'] = $user_id;
      $_SESSION['user_status'] = $userstatus;
      if($_POST['cookie'] == "do") {
       if($cookiepass == "") {
        $cookiecode = mt_srand((double)microtime()*100000);
        while(strlen($cookiecode) <= 10) {
         $i = chr(mt_rand (0,255));
         if(eregi("^[a-z0-9]$", $i)) {
         $cookiecode = $cookiecode.$i;
         }
        }

        $sql = "UPDATE `account` SET cookie_pass = '".$cookiecode."' WHERE username = '".$_POST['username']."' LIMIT 1";
        mysql_query($sql);
        $cookiepass = $cookiecode;
       }

       setcookie("cookie_id", $user_id, time() + 365 * 86400);
       setcookie("cookie_pass", $cookiepass, time() + 365 * 86400);
      }


//en als er al een cookie was:

if(isset($_COOKIE['cookie_id'])) {
  // Read cookie, make session
  $sql = "SELECT user_id,username,password,admin,cookie_pass,active FROM `account` WHERE user_id='".$_COOKIE['cookie_id']."'";
  $query = mysql_query($sql);
  $row = mysql_fetch_object($query);
  $user_id = htmlspecialchars($row->user_id);
  $user = htmlspecialchars($row->username);
  $status = htmlspecialchars($row->admin);
  $dbpass = htmlspecialchars($row->cookie_pass);
  $actief = htmlspecialchars($row->active);
  if($dbpass == $_COOKIE['cookie_pass'] AND $actief == 1) {
$username = $user;
  }
}


?>


bedankt!!!!!

groetjes,
wouter

ohja het gewone inloggen werkt wel, maar de cookie dus niet...
Gewijzigd op 28/09/2010 20:34:06 door Wouter bakker
 
PHP hulp

PHP hulp

23/12/2024 02:44:34
 
- SanThe -

- SanThe -

28/09/2010 20:36:51
Quote Anchor link
Een cookie is nooit veilig.
 
Wouter bakker

wouter bakker

28/09/2010 20:37:45
Quote Anchor link
nee ik bedoel zo veilig mogelijk;) (en vooral dat hij werkt... ik kom er dus echt nie uit-.-) (bedankt voor je snelle reactie;)
 
- SanThe -

- SanThe -

28/09/2010 20:43:23
Quote Anchor link
setcookie("user_id"... het liefst versleuteld o.i.d.
setcookie("user_password"... nooit in een cookie zetten.
 
Wouter bakker

wouter bakker

28/09/2010 20:45:49
Quote Anchor link
het user_password is in md5 he? kan het dan wel.
kun je msschien een voorbeeldje maken euh...:$ (ik weet niet precies meer hoe alles gaat (na 3/4 jaar niet programmeren is dit het 1e dingetje dat ik weer op pak om een site te maken:P).

ene weet je wat er fout is?
bedankt!
 
Martijn B

Martijn B

28/09/2010 20:54:54
Quote Anchor link
De meeste inlog systemen werken met een sessie id.

Deze kun je als volgt genereren (Stuk je code uit mijn winkel):
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$sSessionId
= sha1(microtime() . SHOP_ID . uniqid(mt_rand(), true));
?>


Deze zet je zowel in je cookie als in de database.
En zie daar je hebt je eigen sessie systeem. En je kunt dit systeem uiteraard zo ingewikkeld maken als je zelf wil.

Voorbeeldjes:
- Gebruikers krijgen een nieuwe sessie id als ze in en uitloggen
- Sessies verlopen naar een x aantal seconden
- Verlopen sessies moeten worden verwijderd uit je database. Anders blijft je database tabel maar groeien.
- Sessies koppelen aan IP en browser.
Gewijzigd op 28/09/2010 21:00:11 door Martijn B
 
Wouter bakker

wouter bakker

28/09/2010 20:59:54
Quote Anchor link
en is dit heel veilig?
maar dan heb je het over de sessie's... het probleem zit momenteel nog bij de cookies-.-
ik zal de gehele script even posten:

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

ini_set('display_errors', 'On');
error_reporting(E_ALL | E_STRICT);

include("htmltop.php");
include_once("connect.php");

if(isset($_SESSION['user_id'])) {
 header("Location: stats.php");
}
else{
  if(isset($_POST['submit'])) {
  
   $sql = "SELECT user_id,username,password,admin,active,cookie_pass FROM `account` WHERE username='".$_POST['username']."'";
   $query = mysql_query($sql);
   $row = mysql_fetch_object($query);
   $dbpass = htmlspecialchars($row->password);
   $userpass = md5($_POST['password']);
   $cookiepass = htmlspecialchars($row->cookie_pass);
   $user_id = htmlspecialchars($row->user_id);
   $userstatus = htmlspecialchars($row->admin);
   $useractief = htmlspecialchars($row->active);
   if($dbpass == $userpass) {
     if($useractief == 1) {
        $_SESSION['user_id'] = $user_id;
        $_SESSION['user_status'] = $userstatus;
        if($_POST['cookie'] == "do") {
        setcookie("cookie_id", $user_id, time() + 365 * 86400);
    }

      echo "U bent succesvol aangemeld, u wordt nu doorgelinkt. Gebeurt er niets? klik dan <a href='stats.php'>hier</a>.";
      ?>

<script language="Javascript" type="text/javascript">
window.location="http://www.mijnsite.nl/stats.php";
</script>
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
<?
     }else{
      echo "Uw account is nog niet geactiveerd, check uw mailbox voor de activatielink.";
     }  
    }
else{
     echo "Uw ingevulde wachtwoord klopt niet";
    }
   }
else{
    echo "uw ingevulde gebruikersnaam klopt niet";
  }
}

 
if(isset($_COOKIE['cookie_id'])) {
  $sql = "SELECT username FROM `account` WHERE user_id='".$_COOKIE['cookie_id']."'";
  $query = mysql_query($sql);
  $row = mysql_fetch_object($query);
  $username = htmlspecialchars($row->username);
}


?>

<form method="post" action="index.php">
<table>
<tr>
<td><label for="username">gebruikersnaam:</label></td><td><input id="username" type="text" name="username" maxlength="50" /></td>
</tr>
<tr>
<td><label for="password">wachtwoord:</label></td><td><input id="password" type="password" name="password" /></td>
</tr>

<tr>
<td></td><td><input type="submit" name="submit" value="aanmelden" /></td>
</tr>
<tr>
<td><input id="cookie" type="checkbox" name="cookie" value="do" />Onthoud mijn gegegevens</td>
</tr>
<tr>
<td><a href="forgotpass.php">Ik ben mijn wachtwoord vergeten</a></td>
</tr>
</table>
</form>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
include("htmlbottom.php");
?>


of zit msschien de fout bij stats.php:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
include_once("connect.php");
require("safe_user.php");

?>



Toevoeging op 28/09/2010 21:04:27:

ow trouwens over die sessie's
is dat echt veel veiliger? ik heb nu dus safe_user.php:
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
<?php
if(isset($_SESSION['user_id'])) {
 // Login ok, update last active
 $sql = "UPDATE `account` SET lastactive=NOW() WHERE id='".$_SESSION['user_id']."'";
 mysql_query($sql);
}
else{
 if(isset($_COOKIE['cookie_id'])) {
  $sql = "SELECT cookie_pass,admin FROM `account` WHERE user_id='".$_COOKIE['cookie_id']."'";
  $query = mysql_query($sql);
  $row = mysql_fetch_object($query);
  $dbpass = htmlspecialchars($row->cookie_pass);
  $dbstatus = htmlspecialchars($row->admin);
  if($dbpass == $_COOKIE['cookie_pass']) {
   $_SESSION['user_id'] = $_COOKIE['cookie_id'];
   $_SESSION['user_status'] = $dbstatus;
  }
else{
   setcookie("cookie_id", "", time() - 3600);
   setcookie("cookie_pass", "", time() - 3600);
   header("Location: index.php");
  }
 }
else{
  header("Location: index.php");
 }
}

?>


wat moet ik hieraan dan aanpassen? (trouwens nu heb ik beide scripten weer gecombineerd... dit was dus de oude script die ik nog niet bewerkt had:


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

include("htmltop.php");
include_once("connect.php");

if(isset($_SESSION['user_id'])) {
 header("Location: stats.php");
}
else{
  if(isset($_POST['submit'])) {
   // Login
   $sql = "SELECT user_id,username,password,admin,active,cookie_pass FROM `account` WHERE

username='"
.$_POST['username']."'";
   $query = mysql_query($sql);
   $count = mysql_num_rows($query);
   if($count == 1) {
    $row = mysql_fetch_object($query);
    $dbpass = htmlspecialchars($row->password);
    $userpass = md5($_POST['password']);
    $cookiepass = htmlspecialchars($row->cookie_pass);
    $user_id = htmlspecialchars($row->user_id);
    $userstatus = htmlspecialchars($row->admin);
    $useractief = htmlspecialchars($row->active);
    if($dbpass == $userpass) {
     if($useractief == 1) {
      $_SESSION['user_id'] = $user_id;
      $_SESSION['user_status'] = $userstatus;
      if($_POST['cookie'] == "do") {
       if($cookiepass == "") {
        $cookiecode = mt_srand((double)microtime()*100000);
        while(strlen($cookiecode) <= 10) {
         $i = chr(mt_rand (0,255));
         if(eregi("^[a-z0-9]$", $i)) {
         $cookiecode = $cookiecode.$i;
         }
        }

        $sql = "UPDATE `account` SET cookie_pass = '".$cookiecode."' WHERE username = '".$_POST['username']."' LIMIT 1";
        mysql_query($sql);
        $cookiepass = $cookiecode;
       }

       setcookie("cookie_id", $user_id, time() + 365 * 86400);
       setcookie("cookie_pass", $cookiepass, time() + 365 * 86400);
      }

      echo "U bent succesvol aangemeld, u wordt nu doorgelinkt. Gebeurt er niets? klik dan <a href='stats.php'>hier</a>.";
      ?>

<script language="Javascript" type="text/javascript">
window.location="http://www.mijnsite.nl/stats.php";
</script>
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
<?
     }else{
      echo "Uw account is nog niet geactiveerd, check uw mailbox voor de activatielink.";
     }  
    }
else{
     echo "Uw ingevulde wachtwoord klopt niet";
    }
   }
else{
    echo "uw ingevulde gebruikersnaam klopt niet";
   }
  }
 }

if(isset($_COOKIE['cookie_id'])) {
  // Read cookie, make session
  $sql = "SELECT user_id,username,password,admin,cookie_pass,active FROM `account` WHERE user_id='".$_COOKIE['cookie_id']."'";
  $query = mysql_query($sql);
  $row = mysql_fetch_object($query);
  $user_id = htmlspecialchars($row->user_id);
  $user = htmlspecialchars($row->username);
  $status = htmlspecialchars($row->admin);
  $dbpass = htmlspecialchars($row->cookie_pass);
  $actief = htmlspecialchars($row->active);
  if($dbpass == $_COOKIE['cookie_pass'] AND $actief == 1) {
$username = $user;
  }
}

   ?>

<form method="post" action="index.php">


<table width="100%" border="0" cellspacing="0" cellpading="2"><tr>

<td align="right">Gebruikersnaam</td>
<td><label for="username">
<input id="username" name="username" class="field" value="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo"$username" ?>
" maxlength=256>
</td>
</tr><tr>
<td align="right">Wachtwoord</td>
<td><label for="password">
<input id="password" name="password" type="password" class="field" maxlength=256>
</td>

<td><input class="submit" type="submit" name="submit" value="Aanmelden" /><br><br></td>
</tr>
<tr>
<td colspan="2" class="box"><input id="cookie" type="checkbox" name="cookie" value="do" />Onthoud mijn

gegegevens</td>
</tr>
<tr><td colspan="2" class="box"><a href="forgotpass.php">Ik ben mijn wachtwoord vergeten</a></td></tr>

</table>


</form>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
include("htmlbottom.php");
?>
 
Martijn B

Martijn B

28/09/2010 21:12:32
Quote Anchor link
Om je problemen te omschrijven:
Jij wil dat de website een jaar lang weet wie jij bent.


Als je gebruikt maakt van PHP sessies (deze dus $_SESSION) dat gebeurd er standaard hetzelfde als wat ik net typte.
Er wordt een cookie gemaakt met een random nummer en er wordt een bestand gemaakt op je server. Die met dit nummer correspondeert. In dat bestand zitten al je sessie gegevens.

Nu kun je de cookie van PHP sessies zo instellen dat deze een jaar lang geldig is.
En heb je dus het gene bereikt wat je wou.

De meeste websites werken op deze manier.
Als je echt veilig wil dan moet je voor HTTPS kiezen.
Gewijzigd op 28/09/2010 21:14:39 door Martijn B
 
Wouter bakker

wouter bakker

28/09/2010 21:16:38
Quote Anchor link
dat heb ik nu toch ook:$ hij maakt een code aan, zet die in de database en in de cookie of bedoel je dat niet?
(ik heb dus al een hele tijd niet meer geprogrammeerd dus ben een weer een onmeunige noob:(
(kun je het msschien even verduidelijken met een scriptje?)

bedankt!
 
Martijn B

Martijn B

28/09/2010 21:28:40
Quote Anchor link
Je kunt in ieder geval beter een random nummer (sessie id) in je cookie zetten dan een gebruiker id en een wachtwoord (ook al is dit md5(wachtwoord)).
 
Wouter bakker

wouter bakker

28/09/2010 21:31:14
Quote Anchor link
maar het idee is hetzelfde? (dus is het best veilig? (behalve bij cookie stealing)

ene mag ik je hierop wijzen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
 if($cookiepass == "") {
        $cookiecode = mt_srand((double)microtime()*100000);
        while(strlen($cookiecode) <= 10) {
         $i = chr(mt_rand (0,255));
         if(eregi("^[a-z0-9]$", $i)) {
         $cookiecode = $cookiecode.$i;
         }
        }

?>

het is dus niet het echte wachtwoord;)
en dan kan de user_id toch wel? (daar heb je dan ook niks aan).

--alleen hij werkt nog niet...--
 



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.