Если вы хотите считать количество загрузок, вы должны создать функцию, которая обслуживает эти загрузки, и создать поле в вашей базе данных, которое увеличивает количество загрузок при каждом вызове этой функции. Например,
Вызовите следующую функцию изваше представление передает $filename
и $id
. Чтобы попробовать в первый раз, используйте ID = 4 в качестве одного из идентификаторов загрузок в вашей БД
http://www.yourdomain.com/downloads/download/4
И затем вашконтроллер будет ...
Class DownloadsController extends AppController{
// All your other functions here
function download($id = null){
$this->Article->updateAll(
array('Download.count' => 'Download.count+1'),
array('Download.id' => $id)
);
$download = $this->Download->findById($id);
$this->set('filename', $download['Download']['filename']);
//$filename is an array that can then be used in your view to pass the file for download. to find out what is has you can use debug($filename) in your view
}
}
Затем вам нужно создать специальную раскладку, чтобы браузер знал, что файл запроса является загрузкой, и вам также нужно будет создать представление для download.ctp.В основном, когда вы нажимаете ссылку на файл на своей странице, он вызывает эту функцию, которая будет использовать его представление для обслуживания файла.
Вы можете получить доступ к следующему, который даст некоторое представление о том, что необходимо сделать ..
Учебное пособие