Mistä mahtaisi saada sellaisen lataus laskurin joka laskee että kuinka monta kertaa jotain tiedostoa on ladattu?
Kun googlella löytyy vain sellaisia jotka laskee käviöitä.
ole hyvä, 5€:
<?php $hakemisto = 'load'; //hakemisto, jossa ladattava tavara on $laskuri = 'laskuri.txt'; //tekstitiedosto, johon latausmäärät tallennetaan (oikat 777 tjsp.) //ei varmana muuten jäädä cacheen ;) header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); header("Cache-Control: no-store, no-cache, must-revalidate"); header("Cache-Control: post-check=0, pre-check=0", false); $data = array(); array_map("assoc",file($laskuri)); if(isset($_GET['id']) && file_exists($hakemisto."/".$_GET['id'])){ $id = $_GET['id']; $data[$id]++; $fp = fopen($laskuri,"w"); flock($fp, LOCK_EX); foreach($data as $key => $val) fwrite($fp,"$key|$val\n"); flock($fp, LOCK_UN); fclose($fp); header("Location: ".$hakemisto."/".$id); }else{ foreach(glob("$hakemisto/*.*") as $tiedosto){ echo '<a href="'.$_SERVER['PHP_SELF'].'?id='.basename($tiedosto).'">'.basename($tiedosto).'</a> '; echo 'Latauksia: '.intval(@$data[basename($tiedosto)]).'<br />'; } } function assoc($row){ global $data; $r = explode("|",$row); $data[$r[0]]=trim($r[1]); } ?>
Täysin periaatteiden vastaista antaa valmista koodia, mutta kun tuollaisen esimerkin joskus jollekkin tylsillä hyppytunneilla tein, niin menköön tämän kerran. Nouseepahan niidenkin hyppytuntien hyödyllisyys :)
Kiitos rahat tulee postissa :D
Tuota vielä ku voisit kertoa miten tuo laitetaan toimintaan kun laitoin tuon load
$hakemisto = 'load';
tilalle
$hakemisto = '/esim/esim.rar';
noin niin ei tuo laskuri.txt ainakaan mitään näytä vaikka olisikin ladannut kyseisen tiedoston ja olen Chmodannu sen 777
No kun idea on siinä, että laitat jonnekkin hakemistoon ne filut joita haluat ladattavaksi ja sitten laitat tohon $hakemisto-muuttujaan vaan sen hakemiston nimen - et siis tiedostonimeä - niin skripti listaa sen hakemiston sisällön ja tulostaa linkit jne...
Aihe on jo aika vanha, joten et voi enää vastata siihen.