Ik heb het probleem dat mijn functie om cookies te setten
blijkbaar niet aangeroepen wordt.
Zet ik het op andere plek dan werkt het wel.
Weet ook niet wat ik met 'define' moet.
Er zijn ook telkens voorwaarden om de functie aan te roepen.
Iemand die me op weg kan helpen?

//Cookie names in Inifile

define("CKIEUS","USERNAME");              
define("CKIEPS","PASSWORDSHA1"); 


//in het procesbestand

class Login_Process {
	var $cookie_user = CKIEUS;
	var $cookie_pass = CKIEPS;
.
.
.
}


//functie aanroep

if(isset($_COOKIE[$this->cookie_pass])) 
	{ $this->set_cookie($usernameA, $password, '+'); }


//de functie

function set_cookie($username, $password, $set) {
{
setcookie($this->cookie_user, $usernameA, $cookie_expire, '/');
setcookie($this->cookie_pass, $passwordA, $cookie_expire, '/');
}
Ik wil niet vervelend zijn, maar wat is jouw reden om een gebruikersnaam en een password in een cookie op te slaan? Persoonsgegevens horen daar niet in. Hoogstens een kenmerk dat je ingelogd bent, zoals een controle-hash.
Dat gebeurt ook niet Arien...
Is proefje. Want gebruik een session voor het inloggen en wijzigingen.
Maar ik wil een cookie hebben. Die verandert telkens in de database (alternatief) en als cookie value.
En die wil ik eventueel gebruiken om op de openbare pagina's zonder sessie toch een lid te herkennen.
Is overigens alleen nodig om via mail te reageren.
Ik noem het weliswaar gebruikersnaam en password.
Maar ik gebruik andere gegevens...
Dit stuk zat al ingebouwd in voorbeeld.
Maar er wordt nergens een eerste cookie aangemaakt.
Ik zou zeggen, maak die cookie bij de eerste keer inloggen.
Vandaar dat ik vroeg naar dat 'define'.
Kan er niks over vinden...


In je cookie zie ik staan:
$usernameA en $passwordA. Maar die komen nergens vandaan. Wel bestaan de variabelen $username, $password.

En een define is overigens hetzelfde als een variabele. Je kan er data in opslaan, echter kan deze tussentijds NIET worden aangepast, wat met een normale variabele wel kan. Het wordt ook een constante genoemd die je met [php]define[/php] aanmaakt.
Logisch ook, kijk maar eens naar de code die je geplaatst hebt. Je zegt letterlijk "als cookie bestaat, stel cookie in". Dat zul je dus even anders moeten doen. Wat is hier feitelijk het voordeel van een cookie tov gebruik van sessies?
$usernameA en $passwordA komen van gehashte waardes. Maar niet van de username of het password.
Een waarde gebruik ik als gehasht lidnr (uniek). De andere wil ik telkens varieren.
Zodat beide waardes in cookies moeten overeenkomen met de opgeslagen waardes.

Hans De Ridder op 01/09/2017 17:34:38

$usernameA en $passwordA komen van gehashte waardes.

Ik zie die niet in de functie staan, en als ze van buitenaf komen, dan moeten ze meegenomen worden als argument, of als global (liever niet op die manier).

Het is bedoeld voor promotiesite voor mensen die wat met muziek hebben.
Inloggen, wijzigingen, aanvullingen, etc. gebeurt via session.
Het openbare gedeelte is voor iedereen toegankelijk.
Maar er is een optie om als lid te reageren op bepaalde vragen.
Dat hoeft dus niet, het kan.
Daarom wil ik daar geen session gebruiken.

[size=xsmall]Toevoeging op 01/09/2017 17:46:52:[/size]

Arien, omdat ik met IPTC werk voor de opslag, kan ik op elk gewenst moment alle of enkele gegevens
gebruiken. Net als bij database.
Als ik via een unieke waarde achterhaal welke foto ik moet hebben,
Dan kan ik elke waarde gebruiken en veranderen die in de foto staan.
Dus ook de referenties naar de cookies.
Werkt perfect....
Wat de reden ook is, je pakt het verkeerd aan om een gebruikersnaam en wachtwoord in je cookie te stoppen..
Ik denk dat ik er wel achter ben.
Dat hele gedoe met cookies is alleen bedoeld om bij een vinkje
automatisch 30 dagen ingelogd te blijven.
Dat haal ik er toch al uit..
Maar is wel de reden waarschijnlijk dat er niet wordt geset als checkbox niet op checked staat.
Dat wordt dus slopen....

Nog wel een vraag hierover..
Ik merk als de browser vraagt om inloggegevens te bewaren (na submit), er bij wachtwoordenlijst gewoon de pagina, gebruikersnaam en wachtwoord te lezen zijn...
Omdat leden dan meestal ja zullen zeggen, is dat ook te beveiligen of te hashen?
Of niet nodig?
Dat is al beveiligd vanuit de browser zelf. Je kunt het natuurlijk gewoon uitschakelen door autocomplete="off" mee te nemen in je form.

Reageren