veilige cookies

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

OutSystems Developer

Dit ga je doen Het van scratch af aan ontwikkelen van applicaties met OutSystems; Het aanhaken bij diverse projecten binnen de organisatie; Schakelen met de business; Meedenken over de mogelijkheden van het platform binnen de organisatie. Hier ga je werken Deze organisatie is een toonaangevende speler in de vastgoedbranche en telt momenteel ruim 500 medewerkers. Met meer dan 150 applicaties staat er een complex applicatielandschap, bestaande uit standaard- en maatwerkapplicaties. De maatwerkapplicaties worden ontwikkeld door een inhouse development team. Het doel voor de komende periode is het verder vernieuwen en optimaliseren van het huidige applicatielandschap. Zo staat de organisatie aan

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 »

Developer Front-end

Functie omschrijving Front-end Developer gezocht! Wij zijn op zoek naar een front-end developer voor een organisatie in de regio Veenendaal die de eindverantwoordelijkheid op zich neemt van alles wat met design te maken heeft. Je hebt in deze functie een adviserende rol hiervoor moet je beschikken over een grote dosis vakinhoudelijke kennis. Je creëert unieke concepten door samen met collega’s en klanten te overleggen over aangeleverde designs. Hiermee draag jij je steentje bij aan de groeiambities van de klant. Jij wordt het vaste aanspreekpunt voor klanten wanneer het gaat over planningen, hierin is het jouw taak om alle betrokkenen goed

Bekijk vacature »

.NET Developer C#

Dit ga je doen Als developer nieuwe gave features implementeren; Werken met technieken als C# .NET en (REST) API's webservices; Ontwikkelen van koppelingen middels API's; Maken van technische keuzes en beslissingen over de architectuur; Junior collega's coachen; Initiatief nemen voor nieuwe technische mogelijkheden; Je bent een belangrijke schakel - en vindt het leuk - om te schakelen met de business. Hier ga je werken Als C# .NET Developer wordt je verantwoordelijk voor het ontwikkelen van applicaties voor belangrijkste product van deze organisatie. Dit product is een applicatie voor alles omtrent hypotheken. De programmeertaal die je hierbij beheerst is C#. Er

Bekijk vacature »

Front-end Developer

Front-end Developers opgelet! Bij Luminis zijn ze opzoek naar jou. Lees de vacature en solliciteer direct. Luminis is een software- en technologiebedrijf met meerdere vestigingen. Vanuit deze vestigingen werken 200 professionals aan technisch hoogwaardige oplossingen voor klanten zoals KLM, Nike en Bol.com. Ook ontwikkelt Luminis eigen oplossingen op het gebied van cloud, Internet of Things, data intelligence, e-sports en e-learning. Luminis onderscheidt zich door aantoonbaar voorop te lopen in technologie en innovatie. Luminis heeft drie kernpunten die verankerd zitten in alles wat we doen: het omarmen van nieuwe technologie, meesterschap en kennis delen. Functiebeschrijving First things first! Het is belangrijk

Bekijk vacature »

C#.NET developer

Functie Het development team bestaat momenteel uit vijf backend C#/.NET ontwikkelaars. Op dit moment zit één ontwikkelaar dedicated op de mobiele applicatie. Als team werk je samen aan het zelf ontwikkelde software platform. Dit bestaat uit zowel apps als websites. Om het systeem door meer dan honderdduizenden gebruikers wordt gebruikt is het bijna vanzelfsprekend dat de kwaliteit van het product hoog moet liggen. Het systeem bestaat uit drie projecten. Je werkt dus aan deze drie projecten waarbij de focus op z’n tijd verschuift. De technieken die worden toegepast zijn o.a. .NET Core, Xamarin, C# en MVC. Je zal dus met

Bekijk vacature »

Senior Front end developer Angular

Functie Er zijn momenteel 5 SCRUM-teams waarvan drie gefocust zijn op DevOps en de huidige projecten en twee op innovatie van de platformen. Jij zal onderdeel worden van het innovatie Scrum team. De 2 multidisciplinaire innovatie teams bestaan momenteel uit 14 werknemers. Jij als senior Front end developer wordt onderdeel van onze innovatieteams. De innovatieteams houden zich bezig met het door ontwikkelen van de huidige producten en denken na over nieuwe functionaliteiten. Binnen de rol van Front end developer krijg je veel vrijheid en kan je je dag zelf indelen. Dingen waar jij je dagelijks mee bezig zult houden is

Bekijk vacature »

Medior/senior front end developer

Functie Vanwege de groei binnen het bedrijf zijn we op zoek naar versterking in het development team. Als back-end developer bouw je aan de bedrijfssoftware die ons helpt bij de primaire processen. Een leuk (intern) project dus waarbij je de software continu doorontwikkeld! Je werkt in een klein team, we hebben dagelijks stand-ups en iedere twee weken een scrum-sessie, begeleid door onze Scrum Master. Hierin krijg je uitgebreid de kans om je ideeën te presenteren, en te overleggen met je mede-ontwikkelaars en de Product Owner. Binnen de ontwikkelteams gebruiken we Trello, Gitlab, Jiira, Confluence en Boockstack. Hiernaast werken ze met

Bekijk vacature »

Front-end Developer

Functie omschrijving Gezocht front-end developer! Voor een toffe organisatie in de regio Rhenen zij wij op zoek naar een front-end developer die de eindverantwoordelijkheid op zich neemt van alles wat met design te maken heeft. In deze functie heb je een adviserende rol en beschik je over een grote dosis vakinhoudelijke kennis. Samen met collega’s en klanten overleg je om aangeleverde designs om te zetten naar unieke concepten. Zo draag jij je steentje bij aan de groeiambities van de klant. Voor klanten wordt jij het vaste aanspreekpunt als het gaat over planningen hierin houdt je alle betrokkenen goed op de

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 »

Back-end .NET Developer

Functie omschrijving C# / .NET Developer gezocht voor een dynamische organisatie in de regio Houten! Voor een leuke organisatie in de regio Houten zijn wij op zoek naar een Back-end developer die klaar is voor een nieuwe uitdaging. In deze functie werk jij aan verschillende projecten en ga je vaak bij klanten op bezoek. Binnen deze functie kun je een grote mate van uitdaging, diversiteit en verantwoordelijkheid treffen. Bedrijfsprofiel Waar ga je werken? Het bedrijf waar je gaat werken is gespecialiseerd in het ontwerpen en implementeren van procesautomatisering en procesinformatisering. Zij doen dit onder andere voor de (petro)chemie, pharma, infra,

Bekijk vacature »

Back-end developer (Magento2)

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 back-end developer fungeer je als het verlengstuk van hun klanten. Technisch complexe zaken pak je met liefde op, en hierin werk je samen met o.a. front-end developers en designers. Klanten verwacht hierin kwaliteit van het hoogste niveau en een proactieve, meedenkende rol bij het maken van zowel technische als strategische keuzes. Ga

Bekijk vacature »

PHP Programmeur

Functieomschrijving Vanuit het hoofdkantoor in omgeving Breda, ontwikkel je als PHP programmeur niet alleen webapplicaties, maar ben je verder ook gefocust op het constant inspelen op nieuwe innovaties m.b.t software ontwikkeling. Naast het ontwikkelen van webapplicaties, bouwt deze toffe werkgever ook webshops en websites voor hun opdrachtgevers. Wat ga je doen? Het testen van ontwikkelde applicaties om te zorgen dat ze goed functioneren en voldoen aan de eisen van de klanten; Het ontwerpen en implementeren van webapplicaties met het Symfony framework; Het schrijven van een schone en efficiënte code volgens het Symfony framework; Onderhouden en updaten van bestaande applicaties die

Bekijk vacature »

Medior front-end developer gezocht (€3.300 -

Functie Wat ga je doen? Jij als front-end developer gaat werken binnen de teams van/voor onze klant. Je werkt in een team met starters en ervaren ontwikkelaars met allemaal 1 overeenkomst; passie voor het vak. Maak je een fout? Geen probleem, leer ervan en ga dan weer door. Door de variëteit aan werk kun je in verschillende omgevingen een kijkje nemen en jezelf dus snel ontwikkelen. Wat hebben we jou te bieden? • Uitdagende projecten bij mooie klanten (bij jou in de buurt, of binnenkort intern vanuit ons kantoor!) • Een jonge organisatie met talentvolle collega’s • Veel ruimte voor

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 »
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

20/04/2024 00:18:11
 
- 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.