Contatore Donwload File

Salve a tutti,

sono nuovo di yii calcolabile in poche ore. Vorrei conteggiare i click sul download dei file, come c’è nella sezione estensioni di yii. Ho una tabella così costituita [id][data_creazione][id_pagina_in_cui_esiste][nome_file][hit]

Hit corrisponde al contatore dei download e dato che non ho trovato un’estensione che lo faccia immagino che sia una cosa semplice da farsi.

Il model è stato creato con gii ma nel controller e nella view, immagino che dovrò usar questa per la url dell’href, cosa dovrei scrivere? Oppure c’è un altro modo più semplice?

Grazie a tutti per le info che mi potrete dare.

Ciao, prima di tutto Benvenuto!!!!!!

Io farei così: al click sul file farei partire una chiamata ajax alla pagina controller tel tipo r=contatore/aumenta&idfile=1000

dove hai una funzione del tipo




actionAumenta($idfile){

$model->$this->loadModel($idfile);

$model->hit++;

$model->save();

}

Innanzi tutto grazie del benvenuto e grazie per il supporto.

Vorrei evitare il più possibile di usare ajax. In tal caso come dovrei fare?

grazie

In tal caso, devi non usare ajax. Ma ajax è solo una tecnica di programmazione. Perdonami ma, … come mai vorresti evitarlo?

POtresti allora avere un link a una pagina di download che prepara il file da downloadare e automaticamente aumenta il contatore.


actionScarica($idfile){

$model->$this->loadModel($idfile);

$model->hit++;

//qualsiasi cosa tu voglia fare

$model->save();

//preparazione del donlwoad

$this->render('scarica', array('model'=>$model));

}

buon lavoro…

comunque ha ragione Sensorario… perché no Ajax?

Grazie ad entrambi e stasera vedo di usarlo.

Semplicemente perchè nei miei progetti voglio preoccuparmi il meno possibile della compatibilità tra browser. Già i CSS, sopratutto in IE e Unix, mi impegnano parecchio e non posso farne a meno. Quello che posso, voglio farlo gestire al php. In js ti semplifici sicuramente per alcune cose… ma poi ti "scatramazzi" in altri.

Per questa ragione di js so poco, quindi il codice sopra riportato non saprei neanche come includerlo e usarlo nelle mie pagine.