Licznik pobrań

temperator

Avatar: temperator

2013-12-11 11:38

Witam
na wstępie napiszę że szukałem i nie znalazłem jak zrobić licznik pobrań do v5.2 więc pytam czy można jakoś zagnieździć ten skrypt pobrań który znalazłem w necie.

>1.PHP<

<a href="pobierz.php?plik=1.rar">pobierz 1</a> Pobrano
<?php $plik='1.rar.txt'; if(file_exists($plik)){echo file_get_contents($plik);}else{echo '0';}?>



>POBIERZ.PHP<

<?php
$plik = htmlspecialchars(strip_tags(stripslashes($_GET['plik'])));
if(file_exists($plik.'.txt'))
{
$stara_wartosc = file_get_contents($plik.'.txt');
$nowa_wartosc = $stara_wartosc + 1;
$fp = fopen($plik.'.txt', 'w+');
flock($fp, LOCK_EX);
fwrite($fp, $nowa_wartosc);
flock($fp, LOCK_UN);
fclose($fp);
}
else
{
$fn = fopen($plik.'.txt', 'x');
fwrite($fn, 1);
fclose($fn);
}
header('Location: '.$plik);
?>


pozdrawiam

» Quick.Cms v5.x

temperator

Avatar: temperator

2013-12-11 11:39

chciałem aby było widać ile razy był pobrany dany plik

temperator

Avatar: temperator

2013-12-11 13:00

kombinuję w pliku core/ files.php zmieniam i podstawiam w/w skrypt ale nie działa

co więc trzeba zmienić zeby dodać ten licznik do
/**
* List all files by specified link
* @return string
* @param int $iLink
*/
public function listFilesDownload( $iLink ){
global $lang;

$content = null;
if( isset( $this->aFiles[$iLink] ) ){
$oFFS = FlatFilesSerialize::getInstance( );
$iCount = count( $this->aFilesImages );
$aExt = throwIconsFromExt( );

foreach( $this->aFilesImages as $iKey => $aValue ){
$aValue['iTime'] = filemtime( DIR_FILES.$aValue['sFileName'] );
$aValue['iSize'] = filesize( DIR_FILES.$aValue['sFileName'] );
$aFiles[] = $aValue;
} // end foreach

for( $i = 0; $i < $iCount; $i++ ){
$aData = $aFiles[$i];
$aData['sSize'] = null;

$aName = $oFFS->throwNameExtOfFile( $aData['sFileName'] );

if( !isset( $aExt[$aName[1]] ) )
$aExt[$aName[1]] = 'nn';
$aData['sIcon'] = 'ico_'.$aExt[$aName[1]];

if( isset( $aData['iSize'] ) )
$aData['sSize'] = ( $aData['iSize'] < 1024 ) ? $aData['iSize'].' B' : sprintf( '%01.2f', $aData['iSize'] / 1024 ).' KB';

$content .= '<tr class="l'.( ( $i == ( $iCount - 1 ) ) ? 'L': $i + 1 ).'"><td class="ico"><img src="'.DIR_FILES.'ext/'.$aData['sIcon'].'.gif" alt="ico" /></td><td class="name"><a href="'.DIR_FILES.$aData['sFileName'].'">'.$aData['sFileName'].'</a>'.( !empty( $aData['sDescription'] ) ? '<p>'.$aData['sDescription'].'</p>' : null ).'</td><td class="size">'.$aData['sSize'].'</td><td class="date-file">'.( isset( $aData['iTime'] ) ? displayDate( $aData['iTime'], $GLOBALS['config']['date_format_customer_download'] ) : null ).'</td></tr>';
} // end for

if( isset( $content ) ){
return '<table id="download" cellspacing="1"><thead><tr><td class="ico"></td><td class="name">'.$lang['Name'].'</td><td class="size">'.$lang['Size'].'</td><td class="date-file">'.$lang['Date'].'</td></tr></thead><tbody>'.$content.'</tbody></table>';
}
}
} // end function listFilesDownload
};
?>

Do góry
o nas | kontakt