nree Skrevet 21. mars 2006 Skrevet 21. mars 2006 Har denne koden: $session_expire = 43200; // Session satt til 12 timer $cookie_expire = time()+$session_expire; // Find out what date it will expire ini_set("session.cookie_lifetime",$session_expire);// Set the cookie lifetime session_save_path("sessions"); // Saves sessions to directory "sessions" session_name("cyberstationsess"); // Sets the name of the session cookie session_start(); // Starts session Den lagrer alle sessions til en mappe som heter sessions.. Er det mulighet for å lage ett script som sletter tomme filer. Når session tiden går ut blir kun tekstelementet i filen slettet, ikke hele filen.. Eksempel: brukernavn|s:4:"nils"; Når session tiden da er ute blir filen slik: Er det mulig at ett script automatisk sletter sessionen når den er tom? (under 10 byte f.eks.)
trondes Skrevet 21. mars 2006 Skrevet 21. mars 2006 (endret) Er det mulig at ett script automatisk sletter sessionen når den er tom? (under 10 byte f.eks.) 5787465[/snapback] Sletter dem seg ikke selv da? ( aldri brukt session men ville nå være idiotisk hvis dette ikke er tilfellet ) MEn med scandir og filesize() så skulle dette være en smal sak for deg $dir = "/noe/rart"; $min_fil_byte = 10; $filer = scandir($dir, true); foreach( $filer => $filnavn){ if( filesize( $dir."/".$filnavn) < $min_fil_byte) unlink( $dir."/".$filnavn); } Bare en kode jeg skrev mens jeg ventet på at potetene skulle koke.. uprøvd.. prøves på eget ansvar kom på at scandir virker vel bare fra PHP >5 MEn det er noen som har skrevet en funksjon som gjør samme tingen.. function scandir($dir = './', $sort = 0) { $dir_open = @ opendir($dir); if (! $dir_open) return false; while (($dir_content = readdir($dir_open)) !== false) $files[] = $dir_content; if ($sort == 1) rsort($files, SORT_STRING); else sort($files, SORT_STRING); return $files; } EDIT: en liten kode feil... slettet filer over 10 byte.. ikke så bra Endret 21. mars 2006 av trondes
Nervetattoo Skrevet 21. mars 2006 Skrevet 21. mars 2006 Noe ala: $filename = '/tmp/sessions/sess_151325624534523'; if (empty(file_get_contents($filename))) { unlink($filename); } Eventuelt bruk strlen for å sjekke om lengde er under x tegn. Eventuelt (enda en), bruk filesize for å sjekke.
NH Skrevet 21. mars 2006 Skrevet 21. mars 2006 http://pear.php.net/package/PHP_Compat er en pakke som gir tidligere versoner av php muligheten til å bruke funksjoner som kun finnes i php5. som f.eks scandir. Hver manglende funksjon har en egen fil i pakken, allt du trenger å gjøre er å include denne. krever ingen instalering...
nree Skrevet 25. mars 2006 Forfatter Skrevet 25. mars 2006 Noen som har ett slikt script jeg spør om!?
Gjest Slettet+6132 Skrevet 25. mars 2006 Skrevet 25. mars 2006 Noen som har ett slikt script jeg spør om!? 5808795[/snapback] *host* sessionkoden din så veldig kjent ut *host* Bruk eksempelet Findus ga, det er det beste. (Du trenger en kombinasjon av Findus og trondes sine eksempler). Det klarer du vel?
Gjest Slettet+6132 Skrevet 25. mars 2006 Skrevet 25. mars 2006 Nei, klarer ikke det 5809823[/snapback] La meg gjette; du har ikke engang prøvd enda. Am I right? Hvordan skal du kunne lære deg PHP om du ikke engang prøver litt? Her er noen hint til de snuttene du trenger: if (empty(file_get_contents($filename))) { unlink($filename); } og $dir = './'; $dir_open = @ opendir($dir); if (! $dir_open) return false; while (($dir_content = readdir($dir_open)) !== false) $files[] = $dir_content;
BlueEAGLE Skrevet 25. mars 2006 Skrevet 25. mars 2006 (endret) Har du kanskje lyst til å registrere dine egne funksjoner for å håndtere sessoins? Isåfall så vil jeg anbefale at du leser http://no.php.net/manual/en/function.sessi...ave-handler.php og http://www.zend.org/zend/tut/session.php Edit: Dette er (eller pleide iallfall å være) et forum for utviklere hvor vi hjalp folk å løse slike problemer. Dette var ikke en rent-a-coder side. Hvis du vil lære PHP så tar det tid og du kan ikke overleve som en copy-paste-monkey. Endret 25. mars 2006 av BlueEAGLE
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå