Gå til innhold

Skin selector


Anbefalte innlegg

Har du muligheten til å hjelpe meg litt?

 

Jeg har tenkt å la brukerne få velge skins på siden min. Men sliter litt når det gjelder php og slikt. Laget en liten sak som gjorde at jeg kunne skrive inn: index.php?skin=default

 

Problemet oppstår når siden reloades eller brukeren trykker på en link, da går skinen tilbake til default.

 

Tenkte kanskje jeg må ha noe cookie-greier for at brukeren skal kunne få samme skin når man trykker på linker e.l.

 

Klarer du å lage en liten sak til meg som lagrer en cookie på maskinen til den som surfer på siden min som lagrer hvilken skin som skal brukes. Og når siden åpnes vil samme skin`en være på plass.

 

Er jeg på villspor eller er dette mulig?

Lenke til kommentar
Videoannonse
Annonse

Det er fullt mulig å lage en cookie ja. Først må du lage noen linker som lar brukeren velge skin. Deretter bruker du kode ala dette:

 

setcookie ("Skin", $_GET['skin'], time()+604800)

 

Den setter en cookie som heter skin, inneholder teksten i ?skin=[...] og lagrer den på maskinen i en uke. Deretter kan du bruke denne koden (fortsatt utestet):

 

if   (!isset($_COOKIE['skin'])) $skin = 'default';

else $skin = $_COOKIE['skin'];

 

Du vil nå ha en variabel som heter $skin, og som inneholder verdien i cookien du satte, eventuelt default dersom cookien ikke finnes.

 

Dersom jeg har skrevet noen feil håper jeg noen retter det opp :p

Lenke til kommentar

Eller du kan bruke sessions.

Da er brukerens valg "aktivt" mens han er på siden din.

 

I toppen av hver side må du ha session_start(); og for å registrere en variabel bruker du session_register(variabel);

 

For å sjekke hva variabelen er bruker du $_SESSION['variabel];

 

Se forøverig på php.net ang. sessions... :)

Lenke til kommentar

Seff går det ann men hva er poenget? Sessions fungerer for alle. Det er ikke mulig for en klient og disable sessions. De lagres på serveren.

 

<?php

session_start();

if(!isset($_SESSION['skin'])) session_register('skin');

if(!empty($_GET['skin'])) $_SESSION['skin'] = $_GET['skin'];

?>

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...