GDRCD 5: Problema USCITI - RISOLTO postato il 07/02/2011 15:11:05 nel forum programmazione, gdrcd, open source, hosting e modificato da malitia il 08/02/2011 07:46:06
Salve, sto cercando di creare una land nonostante non sono una programmatrice e proprio per questo non riesco ad identificare il problema nel codice degli usciti che è molto simile a quello degli entrati, tuttavia i pg, una volta usciti dalla land, non vengono visualizzati sotto l'apposita stringa.
Posto qui sotto il codice, se qualcuno può aiutarmi, grazie^^:
<?php include('../ref_header.inc.php'); /*Header comune*/ ?>
<!-- Box presenti-->
<div class="pagina_presenti">
<?php
//Refresh presenza.
if (isset($_REQUEST['disponibile'])===TRUE){
$query = "UPDATE personaggio SET ultimo_refresh = NOW(), disponibile=".gdrcd_filter('num',$_REQUEST['disponibile'])." WHERE nome = '".$_SESSION['login']."'";
} elseif (isset($_REQUEST['invisibile'])&&($_SESSION['permessi']>=GAMEMASTER)){
$query = "UPDATE personaggio SET ultimo_refresh = NOW(), is_invisible=".gdrcd_filter('num',$_REQUEST['invisibile'])." WHERE nome = '".$_SESSION['login']."'";
} else {
$query = "UPDATE personaggio SET ultimo_refresh = NOW() WHERE nome = '".$_SESSION['login']."'";
}
$result = mysql_query($query);
print '<ul class="elenco_presenti">';
//Carico la lista presenti (Entrati).
$query = "SELECT personaggio.nome, personaggio.cognome, personaggio.permessi, personaggio.sesso, personaggio.id_razza, razza.sing_m, razza.sing_f, razza.icon, personaggio.disponibile, personaggio.is_invisible FROM personaggio LEFT JOIN razza ON personaggio.id_razza = razza.id_razza WHERE DATE_ADD(personaggio.ora_entrata, INTERVAL 2 MINUTE) > NOW() ORDER BY personaggio.ora_entrata, personaggio.nome";
$result = mysql_query($query);
print '<li class="luogo">'.$MESSAGE['interface']['logged_users']['logged_in'].'</li>';
while ($record = mysql_fetch_array($result)){
//Stampo il PG
print '<li class="presente">';
switch ($record['permessi']){
case USER: $alt_permessi = ''; break;
case GUILDMODERATOR: $alt_permessi = $PARAMETERS['names']['guild_name']['lead']; break;
case GAMEMASTER: $alt_permessi = $PARAMETERS['names']['master']['sing']; break;
case MODERATOR: $alt_permessi = $PARAMETERS['names']['moderators']['sing']; break;
case SUPERUSER: $alt_permessi = $PARAMETERS['names']['administrator']['sing']; break;
}
//Livello di accesso del PG (utente, master, admin, superuser)
print '<img class="presenti_ico" src="../imgs/icons/permessi'.$record['permessi'].'.gif" alt="'.gdrcd_filter('out',$alt_permessi).'" title="'.gdrcd_filter('out',$alt_permessi).'" />';
//Icona stato di disponibilità. E' sensibile se la riga che sto stampando corrisponde all'utente loggato.
$change_disp=($record['disponibile']+1)%3;
if ($record['nome']==$_SESSION['login']){
//se c'e' stato un cambio di permessi aggiorno
if ($record['permessi']!=$_SESSION['permessi']){$_SESSION['permessi']=$record['permessi'];}
print '<a href="presenti.inc.php?disponibile='.$change_disp.'" class="link_sheet">';
}
print '<img class="presenti_ico" src="../imgs/icons/disponibile'.$record['disponibile'].'.png" alt="'.gdrcd_filter('out',$MESSAGE['status_pg']['availability'][$record['disponibile']]).'" title="'.gdrcd_filter('out',$MESSAGE['status_pg']['availability'][$record['disponibile']]).'" />';
if ($record['nome']==$_SESSION['login']){ print '</a>';}
//Icona della razza pg
if($record['icon']==''){$record['icon']='standard_razza.png';}
print '<img class="presenti_ico" src="../themes/'.$PARAMETERS['themes']['current_theme'].'/imgs/races/'.$record['icon'].'" alt="'.gdrcd_filter('out',$record['sing_'.$record['sesso']]).'" title="'.gdrcd_filter('out',$record['sing_'.$record['sesso']]).'" />';
//Icona del genere del pg
print '<img class="presenti_ico" src="../imgs/icons/testamini'.$record['sesso'].'.png" alt="'.gdrcd_filter('out',$MESSAGE['status_pg']['gender'][$record['sesso']]).'" title="'.gdrcd_filter('out',$MESSAGE['status_pg']['gender'][$record['sesso']]).'" />';
//Nome pg e link alla sua scheda
print ' <a href="../main.php?page=scheda&pg='.$record['nome'].'" class="link_sheet" target="_top">'.gdrcd_filter('out',$record['nome']);
if (empty($record['cognome'])===FALSE){print ' '.gdrcd_filter('out',$record['cognome']);}
print '</a> ';
//Comando visibile/invisibile
if(($_SESSION['permessi']>=GAMEMASTER) && ($record['nome']==$_SESSION['login'])){
if($record['is_invisible']==1){$next=0;} else {$next=1;}
print '<a href="presenti.inc.php?invisibile='.$next.'"><img class="presenti_ico" src="../imgs/icons/vis'.$record['is_invisible'].'.png" alt="'.gdrcd_filter('out',$MESSAGE['status_pg']['invisible'][$record['is_invisible']]).'" title="'.gdrcd_filter('out',$MESSAGE['status_pg']['invisible'][$record['is_invisible']]).'" /></a>';
}
print '</li>';
}//while
//Carico la lista presenti (Usciti).
$query = "SELECT personaggio.nome, personaggio.cognome, personaggio.permessi, personaggio.sesso, personaggio.id_razza, razza.sing_m, razza.sing_f, razza.icon, personaggio.disponibile, personaggio.is_invisible FROM personaggio LEFT JOIN razza ON personaggio.id_razza = razza.id_razza WHERE DATE_ADD(personaggio.ultimo_refresh, INTERVAL 5 MINUTE) > NOW() AND DATE_ADD(personaggio.ultimo_refresh, INTERVAL 3 MINUTE) < NOW() ORDER BY personaggio.ultimo_refresh, personaggio.nome";
$result = mysql_query($query);
print '<li class="luogo">'.$MESSAGE['interface']['logged_users']['logged_out'].'</li>';
while ($record = mysql_fetch_array($result)){
//Stampo il PG
print '<li class="presente">';
switch ($record['permessi']){
case USER: $alt_permessi = ''; break;
case GUILDMODERATOR: $alt_permessi = $PARAMETERS['names']['guild_name']['lead']; break;
case GAMEMASTER: $alt_permessi = $PARAMETERS['names']['master']['sing']; break;
case MODERATOR: $alt_permessi = $PARAMETERS['names']['moderators']['sing']; break;
case SUPERUSER: $alt_permessi = $PARAMETERS['names']['administrator']['sing']; break;
}
//Livello di accesso del PG (utente, master, admin, superuser)
print '<img class="presenti_ico" src="../imgs/icons/permessi'.$record['permessi'].'.gif" alt="'.gdrcd_filter('out',$alt_permessi).'" title="'.gdrcd_filter('out',$alt_permessi).'" />';
//Icona stato di disponibilità. E' sensibile se la riga che sto stampando corrisponde all'utente loggato.
$change_disp=($record['disponibile']+1)%3;
if ($record['nome']==$_SESSION['login']){
//se c'e' stato un cambio di permessi aggiorno
if ($record['permessi']!=$_SESSION['permessi']){$_SESSION['permessi']=$record['permessi'];}
print '<a href="presenti.inc.php?disponibile='.$change_disp.'" class="link_sheet">';
}
print '<img class="presenti_ico" src="../imgs/icons/disponibile'.$record['disponibile'].'.png" alt="'.gdrcd_filter('out',$MESSAGE['status_pg']['availability'][$record['disponibile']]).'" title="'.gdrcd_filter('out',$MESSAGE['status_pg']['availability'][$record['disponibile']]).'" />';
if ($record['nome']==$_SESSION['login']){ print '</a>';}
//Icona della razza pg
if($record['icon']==''){$record['icon']='standard_razza.png';}
print '<img class="presenti_ico" src="../themes/'.$PARAMETERS['themes']['current_theme'].'/imgs/races/'.$record['icon'].'" alt="'.gdrcd_filter('out',$record['sing_'.$record['sesso']]).'" title="'.gdrcd_filter('out',$record['sing_'.$record['sesso']]).'" />';
//Icona del genere del pg
print '<img class="presenti_ico" src="../imgs/icons/testamini'.$record['sesso'].'.png" alt="'.gdrcd_filter('out',$MESSAGE['status_pg']['gender'][$record['sesso']]).'" title="'.gdrcd_filter('out',$MESSAGE['status_pg']['gender'][$record['sesso']]).'" />';
//Nome pg e link alla sua scheda
print ' <a href="../main.php?page=scheda&pg='.$record['nome'].'" class="link_sheet" target="_top">'.gdrcd_filter('out',$record['nome']);
if (empty($record['cognome'])===FALSE){print ' '.gdrcd_filter('out',$record['cognome']);}
print '</a> ';
//Comando visibile/invisibile
if(($_SESSION['permessi']>=GAMEMASTER) && ($record['nome']==$_SESSION['login'])){
if($record['is_invisible']==1){$next=0;} else {$next=1;}
print '<a href="presenti.inc.php?invisibile='.$next.'"><img class="presenti_ico" src="../imgs/icons/vis'.$record['is_invisible'].'.png" alt="'.gdrcd_filter('out',$MESSAGE['status_pg']['invisible'][$record['is_invisible']]).'" title="'.gdrcd_filter('out',$MESSAGE['status_pg']['invisible'][$record['is_invisible']]).'" /></a>';
}
print '</li>';
}//while
// Conteggio i presenti.
$query = "SELECT COUNT(*) AS numero FROM personaggio WHERE DATE_ADD(personaggio.ultimo_refresh, INTERVAL 3 MINUTE) > NOW()";
$result = mysql_query($query);
$record = mysql_fetch_array($result);
//numero utenti presenti.
print '<a href="../main.php?page=presenti_estesi" target="_top">';
if ($record['numero']==1){
print '<div class="page_title"><h2>'.$record['numero'].' '.gdrcd_filter('out',$PARAMETERS['names']['users_name']['sing']).' '.gdrcd_filter('out',$MESSAGE['interface']['logged_users']['sing']).'</h2></div>';
} else {
print '<div class="page_title"><h2 class="presenti_title">'.$record['numero'].' '.gdrcd_filter('out',$PARAMETERS['names']['users_name']['plur']).' '.gdrcd_filter('out',$MESSAGE['interface']['logged_users']['plur']).'</h2></div>';
}
print '</a>';
?>
</div>
<!-- Chiudura finestra del gioco -->
<?php include('../footer.inc.php'); /*Footer comune*/?>
Pagine → 1
08/02/2011 00:26:20 e modificato da malitia il 08/02/2011 00:47:20
Credo di poter considerare la faccenda chiusa perchè..stranamente, non so come, stasera funziona O_O
Chiedo scusa per averti fatto perdere tempo a leggere il codice =_=
PS: però ti faccio i complimenti, hai fatto un lavorone questa volta :D
04/05/2011 00:34:33
ho un problema anche io con gli usciti =_= non me li segnala mai, in alcun modo e... non capisco perchè <.<
Ho un po' modificato il codice di presenti.inc.php [togliendo cose, più che altro], tuttavia non trovo l'errore o il motivo per cui non me li visualizza <.< potete mica aiutarmi? riporto qui i mie pezzi di codice interessati, grazie :)
04/05/2011 20:46:11
ah, volevo specificare che per il resto non riscontro alcun problema nè con gli entrati nè con le posizioni in mappa >.< non mi ci raccapezzo.... ç_ç qualche idea da suggerirmi?
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
Planethos GdR: Una nuova profezia
World of Tanks → Lanciati in epiche battaglie spalla a spalla con altri giocatori. Conquista la supremazia nel mondo dei Carri Armati!
Metin2: Informazioni sul server migliorate
Age of Crystals: Rallentamenti estivi
dbzgdr ha risposto alla discussione: Dragon Ball Z Gdr
Titan Revenge: Calendario eventi fino a fine mese online!
Exclusive Villa GdR → Las Vegas, azzardo, vizi, soldi, intrighi... Più le sue luci sono scintillanti, più le sue ombre sono oscure. La città che non dorme mai, vi aspetta.
Enlisted: Modifiche al sistema di aggiornamento
pyro72 ha aperto un annuncio di ricerca: World Without Heroes ricerca Giocatore
Exclusive Villa GdR → Las Vegas, azzardo, vizi, soldi, intrighi... Più le sue luci sono scintillanti, più le sue ombre sono oscure. La città che non dorme mai, vi aspetta.
World Without Heroes: News GDR: Pubblicazione e Nuovo Inizio
I dati del generatore di rank sono stati aggiornati!
Il gestore di Nexi Generation ha risposto alla recensione di deanna
World Without Heroes → Affronta le forze occulte che minacciano il mondo in World Without Heroes, un gdr play-by-mobile su Whatsapp basato sulle teorie del complotto!
Creare un Background - Consigli ed alcune "linee guida" per creare un background credibile ed avvincente!
Scrittori con i Gdr? - Michela Murgia racconta come è diventata una scrittrice giocando ad un gioco di ruolo online
Hell Dawn: London - Recensione del gdr moderno Hell Dawn London. Entra nel futuro ipotetico...
Western Redemption - Intervista al gestore del play by forum Western Redemption Gdr
Gdr by Chat Requiem - Nel mondo dei giochi on line il gdr by chat è ormai un pezzo da museo.. questa la teoria di Ivan da leggere e commentare assieme!
MMO - Perché gli MMO sono tra i generi di videogiochi più popolari in questo moment