Gå til innhold

Slette filer i mappe som er under 22 bytes


Anbefalte innlegg

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.)

Lenke til kommentar
Videoannonse
Annonse
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 :D

Endret av trondes
Lenke til kommentar
Gjest Slettet+6132
Noen som har ett slikt script jeg spør om!?

5808795[/snapback]

 

*host* sessionkoden din så veldig kjent ut :cool: *host*

 

Bruk eksempelet Findus ga, det er det beste. (Du trenger en kombinasjon av Findus og trondes sine eksempler). Det klarer du vel? ;)

Lenke til kommentar
Gjest Slettet+6132
Nei, klarer ikke det :p

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;

Lenke til kommentar

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 av BlueEAGLE
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...