veilige cookies

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior Front-End Developer

Als Senior Front-End Developer bij Coolblue verbeter je de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Wat doe je als Senior Front-End Developer bij Coolblue? Als Senior Front-end Developer werk je aan de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Je vindt het leuk om samen te werken met de UX designer om stories op te pakken. Daarnaast ben je trots op je werk en verwelkomt alle feedback. Ook Senior Front-end Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om te doen Verbeteren van de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Nadenken

Bekijk vacature »

SQL database developer

Functieomschrijving Heb jij ongeveer 3 jaar ervaring als SQL database developer? Dit bedrijf bouwt applicaties om processen in distributiecentra te optimaliseren. Ter uitbreiding van het development team zijn wij op zoek naar een SQL database ontwikkelaar. Wil jij werken voor een groeiende werkgever in regio Breda waar jij de ruimte en tijd krijgt jezelf te ontwikkelen? Lees dan snel verder! Hoe ziet jouw takenpakket eruit? Je houdt je bezig met het creëren en bouwen van MS SQL server databases; Je werkt aan innovatieve softwareoplossingen voor het verbeteren en/of vernieuwen van logistieke processen; Je gaat projecten vanaf het begin tot het

Bekijk vacature »

Machine Software Developer

Bij een bedrijf in de machinebouw, regio Roosendaal, zijn we op zoek naar een: Machine Software Developer Waar ga je werken? Onze opdrachtgever is gespecialiseerd in de grondverzetmachines. Al meer dan 50 jaar leveren ze zowel nationaal als internationaal diverse machines. Het is een familiebedrijf met een informele werksfeer. Wat ga je doen? Als Machine Software Developer ben je verantwoordelijk voor: - Je ontwerpt, ontwikkelt en debugt software voor machinebesturingssystemen en complexe landbouwmachines; - Je stelt gebruikersinterfaces op (cabinedisplays); - Op termijn ga je softwareprojecten leiden voor specifieke machines; - Inclusief planning, documentatie en validatie; - Om specificaties te verifiëren

Bekijk vacature »

Medior Java developer (fullstack)

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 »

Low Code Developer

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en ben jij HBO afgestudeerd in de richting van IT? Heb jij verstand van datamodellering, NO CODE Platformen en kun jij het aan om projecten te leiden? Voor een leuke opdrachtgever in omgeving Capelle aan den IJssel zijn wij op zoek naar een No Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten in heel het land! Wat ga je hier zoal doen? Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform, je

Bekijk vacature »

.NET developer

Functie Als developer heb jij de keuze om aan te sluiten bij het team (13 developers) die op locatie projectmatig bij klanten werkt. Wanneer jij liever intern bij de werkgever werkt is er ook alle ruimte voor jou in het interne team (8 developers) van dit bedrijf. Je werkt samen aan verschillende projecten bij of voor de klant. Het project wordt aangeleverd door sales aan de project manager. Die maakt samen met de Resourcer een planning en op basis daarvan wordt uit het development team een “projectgroep” opgesteld. Hoeveel en welke projecten jij wilt oppakken gebeurt geheel in samenspraak met

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 »

Oracle APEX Ontwikkelaar (3.500-6.000 euro)

Bedrijfsomschrijving Ben jij een getalenteerde Oracle APEX ontwikkelaar met minimaal één jaar ervaring in het ontwikkelen van Oracle APEX-applicaties? Ben je gepassioneerd over het ontwikkelen van bedrijfskritische oplossingen en wil je werken bij een toonaangevend consultancybedrijf? Dan zijn wij op zoek naar jou! Deze organisatie beschikt over zowel inhouse als externe projecten, maar bovenal over een sterk team en netwerk van opdrachten waardoor jij jezelf verder kunt ontwikkelen. Het team bestaat uit een aantal junior en medior developers, maar vooral uit senioren. De business unit managers binnen het team zijn mensen die hun vak verstaan en zelf als Oracle APEX

Bekijk vacature »

Software Developer C# .NET

Functie omschrijving Zoek jij een nieuwe uitdaging binnen development waar je komt te werken binnen een flexibel, jong en ondernemend bedrijf? Wij zijn voor deze functie op zoek naar een C# .NET Developer die enthousiast wordt van het aansluiten en begeleiden van (complexe) nieuwe klanten. Verder begeleid je complexe projecten, ben jij iemand die altijd kansen ziet? Dan zoeken wij jou! Verder ga jij je bezighouden met: Het verbeteren van functionaliteiten binnen het dataplatform; Meedenken in oplossingsrichtingen; Werken aan de architectuur; Ontwikkelen van nieuwe technologieën. Bedrijfsprofiel Waar ga je werken? De organisatie waar je voor gaat werken heeft een onafhankelijk

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 »

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 »

Embedded Software Developer

Functie omschrijving Ben jij een Embedded Software Developer die affiniteit heeft met de allernieuwste technieken? Voor een mooi softwarebedrijf in omgeving Gouda zijn wij op zoek naar een Embedded Software developer. Binnen deze rol houdt jij je bezig met alle werkzaamheden die nodig zijn om een functionaliteit te bouwen. Denk aan ontwerpen, architectuur, programmeren en algoritmes. Je voert test en validatie werkzaamheden uit bij de implementatie bij de klant. Ben jij enthousiast en een echte team player? Lees dan snel verder en laat wat van je horen! Bedrijfsprofiel Onze opdrachtgever bestaat uit een groot aantal creatieve en ambitieuze ontwikkelaars. Ze

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 »

Senior pega developer

You work on software that makes colleagues and customers happy! Thanks to your IT skills, De Mandemakers Groep really makes a difference for its customers. Do coding, testing and deployments make your heart beat faster? Then apply today as Senior Pega Developer at De Mandemakers Groep! Wat ga je doen? The job title gives it away: You will be developing Pega software. This ranges from technical design, coding and testing to test automation, deployments and bug fixing. Your goal is to continuously improve our systems so that colleagues can work efficiently and customers receive optimal service. You don't have to

Bekijk vacature »

Front-end Angular developer

Functie In jouw rol als Front-End developer werk je samen met de backend developers om middels tweewekelijkse sprints het platform naar een hoger niveau te tillen. Hiernaast heb je affiniteit met data en werk je graag samen met het team om de gegevensintegriteit en -beveiliging te waarborgen, om ervoor te zorgen dat de gebruiker wereldwijd de beste SaaS-services heeft. Deze organisatie heeft meer dan 100 mensen in dienst, waarvan er 45 in Nederland werken. Het ontwikkelteam bestaat uit 10 mensen en is verdeeld in 2 scrumteams. Het eerste team bestaat uit Java en Scala ontwikkelaars. Het tweede team, waar jij

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/05/2024 04:40:57
 
- 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.