Un Evento Unico. 5 Sale. 27 Interventi. SEO, SOCIAL, E-Commerce, Mobile, Turismo.
CLICCA QUI e SCOPRI DI PIù X Chiudi
 
Forum GT: Condividiamo idee e conoscenza Forum GT: Condividiamo idee e conoscenza


Condividi questo contenuto nei Social Network:
Ti stiamo aspettando: Registrati subito e gratis. Entra a far parte di una delle comunità più attive in Italia. Se hai dimenticato i tuoi dati li puoi recuperare subito.


Vai indietro   Forum per Webmaster: Condividiamo Idee e Conoscenza > Sviluppo e Gestione siti web > Php - Mysql
Benvenuto! Forum Regole FAQ Lista utenti Calendario Segna come letti


Rispondi
 
LinkBack Strumenti di discussione
Vecchio 21-03-09, 16:11   #1 (permalink)
Banned
 
Data di registrazione: Mar 2009
Messaggi: 126
Attesa lato server caricamento pagina php

Ciao ragazzi,
ho un urgente bisogno di uno script o una condizione php che dopo
tot di tempo carichi lo script php.
Se lo faccio lato client possono imbrogliare se lo faccio lato server saranno costretti ad aspettare.
VI faccio un esempio:
Se i visitatori visitano la pagina w w w .site.com/ciao.php
si aggiungono dei punti, ma questi punti devono essere assegnati
ogni 30 secondi, e loro fanno il refresh con tutto il redirect a tempo (lato client) cosi barando, non c'è un modo per farli attendere lato server?? o un modo + sicuro??
rispondetemi! grazie in anticipo!!
frank92 non in linea   Rispondi citando
Vecchio 21-03-09, 20:29   #2 (permalink)
Ricercatore
 
L'avatar di Magicale
 
Data di registrazione: Feb 2009
Messaggi: 333
Ciao,
se utilizzi un database per i punti, memorizza insieme al punteggio anche l'ora in cui viene aggiornato incrementando i punti solo se dall'ora dell'ultimo aggiornamento sono passati 30 secondi.
A mio avviso questa è la soluzione più sicura per evitare imbrogli.

Alessandro
__________________

Webmaster SEO
Magicale non in linea   Rispondi citando
Vecchio 22-03-09, 11:44   #3 (permalink)
Banned
 
Data di registrazione: Mar 2009
Messaggi: 126
nn si può fare cosi?

Non si può fare una cosa simile?

Codice:
<?php
/**
 * login.php
 *
 * @version 1.0
 * @copyright 2008 by ?????? for XNova
 */
define('INSIDE'  , true);
define('INSTALL' , false);
$InLogin = true;
$ugamela_root_path = './';
include($ugamela_root_path . 'extension.inc');
include($ugamela_root_path . 'common.' . $phpEx);
 includeLang('login');
 if ($_POST) {
  $login = doquery("SELECT * FROM {{table}} WHERE `username` = '" . mysql_escape_string($_POST['username']) . "' LIMIT 1", "users", true);
  if ($login) {
   if ($login['password'] ==  md5($_POST['password'])) {
    if (isset($_POST["rememberme"])) {
     $expiretime =  time() + 31536000;
     $rememberme = 1;
    } else {
     $expiretime = 0;
     $rememberme = 0;
    }
    @include('config.php');
    $cookie = $login["id"] . "/%/" . $login["username"] . "/%/" . md5($login["password"] . "--" . $dbsettings["secretword"]) . "/%/" . $rememberme;
    setcookie($game_config['COOKIE_NAME'], $cookie, $expiretime, "/", "", 0);
    unset($dbsettings);
    header("Location: ./frames.php");
    exit;
   } else {
    message($lang['Login_FailPassword'], $lang['Login_Error']);
   }
  } else {
   message($lang['Login_FailUser'], $lang['Login_Error']);
  }
 } else {
  $parse = $lang;
  $query = doquery('SELECT username FROM {{table}} ORDER BY register_time DESC', 'users', true);
  $parse['last_user'] = $query['username'];
  $query = doquery("SELECT COUNT(DISTINCT(id)) FROM {{table}} WHERE onlinetime>" . (time()-900), 'users', true);
  $parse['online_users'] = $query[0] + 9;
  $parse['users_amount'] = $game_config['users_amount'];
  $parse['servername'] = $game_config['game_name'];
  $parse['forum_url'] = $game_config['forum_url'];
  $parse['PasswordLost'] = $lang['PasswordLost'];
  $page = parsetemplate(gettemplate('login_body'), $parse);
  display($page, $lang['Login']);
 }
// -----------------------------------------------------------------------------------------------------------
// History version
?>
questo è il login di un OGame chiamato XNova io ho trovato la condizione:

WHERE onlinetime>" . (time()-900), 'users', true);

infatti dopo tot di tempo username risulta disconnesso
noto che frutta i cookie e la funzione time non si può fare lo stesso senza fare casini nel db, visto che si parla circa di 40 controlli da inserire nel db??
frank92 non in linea   Rispondi citando
Vecchio 23-03-09, 11:40   #4 (permalink)
Ricercatore
 
L'avatar di Magicale
 
Data di registrazione: Feb 2009
Messaggi: 333
Non è che ci siano grosse differenze visto che anche nello script da te proposto (e che comunque fa tutt'altra cosa) viene memorizzata sul db l'ora della connessione.
Infatti la query da te riportata controlla il campo `onlinetime` della tabella `user` per verificare quanti utenti sono connessi e non il cookie.

Alessandro
__________________

Webmaster SEO
Magicale non in linea   Rispondi citando
Vecchio 23-03-09, 14:48   #5 (permalink)
Banned
 
Data di registrazione: Mar 2009
Messaggi: 126
Come posso estrarre la variabile del utente connesso dai cookie?
frank92 non in linea   Rispondi citando
Vecchio 23-03-09, 16:53   #6 (permalink)
Ricercatore
 
L'avatar di Magicale
 
Data di registrazione: Feb 2009
Messaggi: 333
I dati presenti nel cookie li ritrovi dentro l'array:
Codice PHP:
$_COOKIE 
__________________

Webmaster SEO
Magicale non in linea   Rispondi citando
Rispondi
Tags: , , , , , , , ,



Strumenti di discussione

Regole di scrittura
Non puoi postare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi allegare file
Non puoi editare i tuoi post

BB code is Attivo
smilies è Attivo
[IMG] il codice è Attivo
Il codice HTML è Disattivato
Trackbacks are Attivo
Pingbacks are Attivo
Refbacks are Disattivato
Vai al forum



Tutti gli orari sono GMT +3. Attualmente sono le 15:20.




Forum GT - © 2004-2009 GT idea S.r.l P.iva 02418200800 - Privacy/Disclaimer

SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.