Allora, ragioniamo insieme e vediamo se ho fatto bene [8(]
Non ho creato il campo "vote_date" in quanto già presente nella tabella "mkp_tosite" il campo "date" con la relativa variabile richiamata nel codice ("$date").
Mi sono limitato ad aggiungere invece le seguenti righe di codice:
$query = $DB->query( "SELECT id FROM mkp_topsite where date='$date'");
per richiamare il contenuto del campo "date" tramite la variabile "$date"
$date_domani = date('d/m/y', mktime(0, 0, 0, date("m") , date("d") + 1, date("Y")));
non so se sta bene ma dovrebbe cacolare il giorno successivo a "date"
poi ho aggiunto la seguene istruzione IF:
if($date_domani < $date) {
$message = "{$mklib->lang['to_justvote']}";
$mklib->error_page($message);
exit;
}
In parole povere ecco le due funzioni che ho modificato con le stringhe appena menzionate:
------------------------------------------------------------ -
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();
$query = $DB->query( "SELECT id FROM mkp_topsite where date='$date'");
$date_domani = date('d/m/y', mktime(0, 0, 0, date("m") , date("d") + 1, date("Y")));
if($date_domani < $date) {
$message = "{$mklib->lang['to_justvote']}";
$mklib->error_page($message);
exit;
}
$query = $DB->query( "SELECT title FROM mkp_topsite where id = '$ide'");
$row = $DB->fetch_row($query);
$t_t = $row['title'];
$maintit = "{$mklib->lang['to_vote']} $t_t";
$users = $this->retrieve_online();
$content .= ".........................
............................................
}
function add_rate() {
global $ibforums, $DB, $mklib;
$ide= intval($ibforums->input['ide']);
$rating = intval($ibforums->input['rating']);
$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);
$query = $DB->query( "SELECT id FROM mkp_votes where module = '$module' and id_entry = '$ide' and ip = '$ipuser'");
$checkip = $DB->get_num_rows($query);
$query = $DB->query( "SELECT id FROM mkp_topsite where date='$date'");
$date_domani = date('d/m/y', mktime(0, 0, 0, date("m") , date("d") + 1, date("Y")));
if($date_domani < $date) {
$message = "{$mklib->lang['to_justvote']}";
$mklib->error_page($message);
exit;
}
$query="INSERT INTO mkp_votes(id_entry, module, id_member, ip)VALUES('$ide', '$module', '$iduser', '$ipuser')";
$DB->query($query);
$query = $DB->query( "SELECT rate, trate FROM mkp_topsite where id = '$ide'");
$row = $DB->fetch_row($query);
$rate = $row['rate'];
$trate = $row['trate'];
$votes = ($trate +1);
if ( $rating != 0 ) {
$rate = round ((($trate*$rate)+$rating)/($votes), 2);
}
$DB->query("UPDATE mkp_topsite SET rate ='$rate', trate ='$votes' where id = '$ide'");
$DB->close_db();
Header("Location: index.php?ind=topsite");
exit;
}
------ ------------------------------------------------------------ -
Prima di uplodare il tutto, per evitare complicazioni, sono corrette le modifiche fatte al codice?
Grazie ancora e a presto []

]
Rispondi quotando