Ik ben bezig met een scriptje(goed betaald
), nou zit ik met een paar kleine probleempjes.
Land van herkomst:
Ik moet het land van herkomst achterhalen op een of andere manier, dit voor het mooi berekenen van de stats.
De website wordt een wereldwijde website dus ik moet op een of andere manier kunnen bekijken waarvandaan ze komen.
Ik heb een aantal keuzes:
• $HTTP_ACCEPT_LANGUAGE:
Voordeel:
Dit heeft als groot voordeel dat het geen groot script is, geen database vereist, geen moeite.
Nadeel:
Als de gebruiker een engelstalig besturingsysteem heeft dan ziet mijn script hem als engels. Hierdoor worden mijn stats (en taalkeuze) redelijk misvormd.
• IP Tabellen per land:
Ik heb een tijdje gezocht, ik heb het ook gevonden.
Meer info, zie Het [rml][ php/mysql] landen van bezoekers achterhalen[/rml]
Voordeel:
99,9% kans dat het land van herkomst klopt
Nadeel:
Je moet een script + database van 5mb aan ipranges hebben, dit is wel leuk enzo, maar niet geweldig.
Wat kan ik het beste gebruiken? Aan de ene kant ga ik voor de database, de andere kant helemaal niet.
Gebruikersloginscript:
Ik moet ook een scriptje maken dat een gebruiker inlogt met een sessie(zie GoT), deze sessie moet over te sluiten zijn.
Ik dacht aan ongeveer het volgende:
Gebruiker komt op de site, hij is nog niet ingelogged dus er wordt een sessie aangemaakt met een userid( = 0 ) en het ip van de gebruiker.
Nou wil ik kunnen zien waar deze gebruiker zich bevind op mijn website dus er moet een mysql database achter komen te hangen(niet zoon probleem).
Het uitloggen is ook niet een groot probleem, gewoon kijken of de sessie ook nog in MySQL staat, zoja dan ben je ingelogged, zonee dan ben je uitgelogged.
Het probleem zit hem in een klein vaag foutje.
Ik schrijf een sessie weg en maak een koekie aan die 1 jaar mag leven. De session lifetime staat ook op 1 jaar.
Hij wil ook leuk blijven ingelogged als je b.v. 5 minuten actief bent op de website en daarna het venster sluit en weer vedder gaat, maar als je langer dan 10 minuten bent ingelogged dan logt hij vanzelf uit
Stukjes script:
inloggen:
Waarom logt hij dan uit na 10 minuten als je actief blijft? of werk ik gewoon stom met sessies?
Land van herkomst:
Ik moet het land van herkomst achterhalen op een of andere manier, dit voor het mooi berekenen van de stats.
De website wordt een wereldwijde website dus ik moet op een of andere manier kunnen bekijken waarvandaan ze komen.
Ik heb een aantal keuzes:
• $HTTP_ACCEPT_LANGUAGE:
Voordeel:
Dit heeft als groot voordeel dat het geen groot script is, geen database vereist, geen moeite.
Nadeel:
Als de gebruiker een engelstalig besturingsysteem heeft dan ziet mijn script hem als engels. Hierdoor worden mijn stats (en taalkeuze) redelijk misvormd.
• IP Tabellen per land:
Ik heb een tijdje gezocht, ik heb het ook gevonden.
Meer info, zie Het [rml][ php/mysql] landen van bezoekers achterhalen[/rml]
Voordeel:
99,9% kans dat het land van herkomst klopt
Nadeel:
Je moet een script + database van 5mb aan ipranges hebben, dit is wel leuk enzo, maar niet geweldig.
Wat kan ik het beste gebruiken? Aan de ene kant ga ik voor de database, de andere kant helemaal niet.
Gebruikersloginscript:
Ik moet ook een scriptje maken dat een gebruiker inlogt met een sessie(zie GoT), deze sessie moet over te sluiten zijn.
Ik dacht aan ongeveer het volgende:
Gebruiker komt op de site, hij is nog niet ingelogged dus er wordt een sessie aangemaakt met een userid( = 0 ) en het ip van de gebruiker.
Nou wil ik kunnen zien waar deze gebruiker zich bevind op mijn website dus er moet een mysql database achter komen te hangen(niet zoon probleem).
Het uitloggen is ook niet een groot probleem, gewoon kijken of de sessie ook nog in MySQL staat, zoja dan ben je ingelogged, zonee dan ben je uitgelogged.
Het probleem zit hem in een klein vaag foutje.
Ik schrijf een sessie weg en maak een koekie aan die 1 jaar mag leven. De session lifetime staat ook op 1 jaar.
Hij wil ook leuk blijven ingelogged als je b.v. 5 minuten actief bent op de website en daarna het venster sluit en weer vedder gaat, maar als je langer dan 10 minuten bent ingelogged dan logt hij vanzelf uit
Stukjes script:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| if (isset($_COOKIE["koek_userid"])) { $koeksesid = $_COOKIE["koek_userid"]; $koeksesuserid = $_COOKIE["koek_sessionid"]; $sql_temp = mysql_num_rows(mysql_query("SELECT * FROM {$sql_voor}sessions WHERE session_id='$koeksesid' AND user_id='$koeksesuserid' LIMIT 1")); } if ($zitsesidintable==1){ session_id( $_COOKIE["koek_userid"] ); } else { setcookie ("koek_userid", "", time()-3600); setcookie ("koek_sessionid", "", time()-3600); } session_start(); if (session_is_registered("sessiontje")) { //.. } else { //.. } |
inloggen:
PHP:
1
2
3
4
5
6
7
8
9
10
| //de koekies koek_userid en koek_sessionid worden gezet //updaten wordt dus een timestamp gedaan(zodat je ook kan zien hoeveel //gebruikers online zijn etc), ook een ip en request_uri stuur ik mee. //hier het starten van de sessie $koekdagen = 60*60*24*100; //secs*mins*uur*dagen $sessiontje = array('Id' => $UserID, 'Username' => $UserName); session_set_cookie_params ( time()+$koekdagen , "" , ".url.com" ); session_register("sessiontje"); |
Waarom logt hij dan uit na 10 minuten als je actief blijft? of werk ik gewoon stom met sessies?
[ Voor 6% gewijzigd door Verwijderd op 20-03-2003 20:23 . Reden: foutje @ scritp ]