Volevo domandare.
Se io ho una tabella con 1000 records inseriti, e 3 colonne, strutturate quanto segue:
Nome, Email, Online
E voglio selezionare da questa tabella tutti i record che hanno come valore Online = 0 o maggiore, ma che però siano univoci attribuiti ad un unico IP. Ad esempio, prendo tutti i record dell'IP 174.154.174.55 e utilizzo solo il primo record ottenuto in base alla data_login, si puo fare?
In parole povere, devo assegnare a determinati account un tot di punti, solo che ho il problema che loro possono aprire più account contemporaneamente, e con lo script che ho, assegnerebbe i punti ad entrambi gli account... come posso limitarli in modo che solo 1 per determinato IP li riceva?
Ho un altra tabella che registra ogni singolo login degli utenti per IP e ne registra la ultima data di login, ovvero l'indirizzo IP effettivo che loro utilizzano nel momento di online, però vengono registrati molteplici record, ad esempio:
Account ID 1, 01/01/13 ore 14:41 login IP 11.11.11.11
Account ID 1, 01/01/13 ore 17:44 login IP 22.22.22.22
quindi dovrei prendere il record che abbia la data più recente e prenderne l'IP, verificarlo poi successivamente che esso non esista già in questa tabella, e nel caso saltare l'assegnazione dei punti per quell'account.. ma come fare?
Io finora mela sono cavata con questo script:
codice:
$1 = mysqli_connect($server_ip, $user, $password, $database) or die(mysql_error());
$var1 = 0;
$var2 = mysqli_query($1,"SELECT * FROM tabella_utenti WHERE online >= 0");
while($execute = mysqli_fetch_array($var2)) {
$var1 = $execute['account_ID];
$var3 = mysqli_query($1,"UPDATE database.punti SET punti = punti+1 WHERE account_ID = $var1");
}
mysqli_close($online);
Solo che come detto, questo script assegna a TUTTI gli account che siano online i punti ogni tot di tempo (cronjob), quindi qualcuno potrebbe crearsi 15 account, metterli online tutti e prendersi i punti...
Come risolvere?