|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Jan 2002
Città: Lecce
Messaggi: 90
|
Modificare votazione nella sezione TopSite
Salve a tutti,
vi sottopongo un problema che ho con la programmazione in PHP e vediamo se gentilmentente qualche anima buona può darmi una mano Il mio sito è www.helpinweb.it e si basa su un portale (MkPortal) che nella sezione TopSite non permette la votazione agli utenti che hanno già espletato la loro preferenza. Ebbene, io vorrei fare in modo che il voto lo si potesse ripetere ogni 24 ore, anche dallo stesso utente. Ecco la funzione da modificare: ------------------------------------------------------------------------------------- function submit_rate() { global $ibforums, $mklib, $Skin, $DB; $ide= intval($ibforums->input['ide']); $iduser = $ibforums->member['id']; $ipuser = $_SERVER['REMOTE_ADDR']; $module = "topsite"; $query = $DB->query( "SELECT id FROM mkp_votes where module = '$module' and id_entry = '$ide' and id_member = '$iduser'"); $checkuser = $DB->get_num_rows(); $query = $DB->query( "SELECT id FROM mkp_votes where module = '$module' and id_entry = '$ide' and ip = '$ipuser'"); $checkip = $DB->get_num_rows(); if($checkuser || $checkip) { $message = "{$mklib->lang['to_justvote']}"; $mklib->error_page($message); exit; } ----------------------------------------------------------------------------------- Ho una mezza idea di cosa fare ma vorrei prima un vostro utile consiglio in proposito, anche perchè non so se esiste già una funzione in PHP che permetta di riconoscere la durata minima di 24 ore, oltre la quale sarà possibile rivotare. Grazie mille per la gentile attenzione e per il vostro prezioso aiuto. A presto
__________________
Se cercate sorprese, programmi, screen savers, sfondi, drivers e consigli utili non potete fare a meno di dare un'occhiata a quest'indirizzo!!! --> http://www.helpinweb.it <-- |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Devi salvare anche l'ora di votazione e successivamente permettere di effetturre la votazione se sono passate più di 24 ore... In alternativa puoi usare un cookie a scadenza... Se il cookie non è scaduto non puoi votare...
Forse la soluzione più semplice è quella del cookie... |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 414
|
Be secondo me l'idea migliore è quella della data sul db, per questo in PHP esiste la funzione time() che ti da come risultato l'ora attuale in numero di secondi dal 1970(specifica time)
poi ti e sufficente controllare se il time al momento del voto è maggiore del time precedente più 3600x24 secodi.. a me mi sembra la soluzione migliore anche per il fatto che i cookie si possono cancellare... Ciao |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 15:53.



















