[RISOLTO - GDR CD 5.4] Presenza non visibile al primo accesso postato il 31/03/2018 13:23:12 nel forum programmazione, gdrcd, open source, hosting e modificato da damnedqueen89 il 01/04/2018 14:20:29
Buongiorno!
Mi ritrovo a scrivere da queste parti perchè ho riscontrato un problema abbastanza fastidioso nel suo insieme e magari qualcuno potrebbe illuminarmi su come risolverlo!
Espongo il problema:
Una volta che un utente si iscrive e compie il primo accesso nella land, la sua presenza non è rilevata nell'elenco dei presenti e dei presenti estesi. L'utente può fare tutto, consultare le bacheche, mandare messaggi privati, spiare le chat eccetera eccetera, ma non si vede perchè è come se fosse un fantasmino o la particella di sodio dell'acqua.
Questo problema ho visto che si risolve facendo il logout e successivamente il login, ma avrei piacere di capire a cosa sia dovuto, qualcuno potrebbe darmi una mano?
Pagine → 1
31/03/2018 14:43:05
Ciao, usi la versione 5.4.1 pulita o hai fatto delle modifiche alle parti che gestiscono presenti, login e logout?
31/03/2018 16:16:33
Ciao! Ho iniziato con la versione pulita per poi farci le modifiche sopra, ma effettivamente potrei aver toccato io stessa qualcosa senza rendermene conto.
Faccio un controllo incrociato con una versione gdr-cd pulita per vedere se ci sono incongruenze e in caso riscrivo qui!
31/03/2018 17:42:28
controlla a che valore hai impostato i valori di default dei campi ora_entrata, ora_uscita e ultimo_refresh nella tabella personaggio sul database.
se sono impostati a current_timestamp potresti incorrere in problemi simili a quelli che descrivi
31/03/2018 21:58:24 e modificato da damnedqueen89 il 31/03/2018 21:59:39
01/04/2018 11:27:51 e modificato da lkmnoppo il 01/04/2018 11:59:20
Un'altra domanda, hai fatto modifiche anche alla pagina di iscrizione? Perché come ha suggerito leoblacksoul potrebbe essere un problema di come vengono settati i valori di "ultima entrata" e "ultima uscita" alla registrazione sul db del personaggio.
Infatti il comportamento che descrivi supporta questa ipotesi perché un logout seguito da un login (che sono praticamente uguali all'originale) riportano il db in uno stato consistente rendendo il tutto correttamente funzionante. Il logout sistema "ultima uscita" e poi da quel momento in poi la pagina presenti ha un'"ultima uscita" valida da confrontare.
Per verificare questa ipotesi, prova a registrare un pg, e poi vedi quali sono i valori che sono stati inseriti nel db nei campi "ultima uscita" e "ultima entrata"
Edit: ho appena controllato sulla documentazione di MySQL (do per scontato che usi questo perché di solito è così, qualora non fosse vero correggimi) e per come è il db di default, il valore che dovresti trovare in un pg appena registrato è 0000-00-00 in entrambe le colonne.
01/04/2018 11:28:52 e modificato da geko il 01/04/2018 11:30:08
Ciao,
il +300 sul timestamp de "ultimo_refresh" significa che aggiunge 5 minuti e in inserito in quel modo nel IF vuol dire che controlla che dall'ultimo refresh siano passati 5 minuti prima di poter rientrare se non hai effettuato il logout, controllo superabile facilmente dove se erroneamente cambio sito e clicco il tasto indietro (del browser) non rieffettuo il login ma rientro perchè le sessioni e il cookie della mia sessione esiste ancora.
Nella pagina presenti.inc.php stai attenta perchè è lì che aggiorna le sessioni degli spostamenti del pg e "ultimo_refresh".
Mentre la tabella a db del personaggio non può avere il current_timestamp di default, in primis, perchè se guardi nell'ultima fase della registrazione i campi ora_entrata e ora_uscita sono a NULL e il current_timestamp NON supporta il valore NULL di default.
Quindi per poter mettere il current_timestamp devi PRIMA modificare l'inserimento del personaggio a DB quando viene registrato, inoltre current_timestamp è supportato solo dai campi TIMESTAMP e non dai DATE o DATETIME.
01/04/2018 14:17:16 e modificato da damnedqueen89 il 01/04/2018 14:22:06
Sono andata direttamente nel db dove ho cambiato i valori di default a ultimo_refresh, ora_entrata, ora_uscita. Dato che avevo NULL in tutti e tre i campi ho inserito invece 0000-00-00 00:00:00 dato che provando a registrare continuava a dare lo stesso errore e adesso invece il fantasmino non è più fantasma ma anzi viene segnato perfettamente nella lista dei presenti, quindi il problema è risolto!
Vi ringrazio tantissimo del vostro aiuto <3
01/04/2018 16:09:02
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
Storie di Agarthi: Omicidi a Città Vecchia: la scia si allunga
blancks ha risposto alla discussione: Cambio Licenza GDRCD
War Thunder → Aviazione, veicoli corazzati e flotte militari della seconda guerra mondiale. Parteciperai a tutte le principali battaglie!
treesome ha recensito Road to Hamartia
Hero Wars: Approfitta della vendita x4 Emerald!
wishbone ha recensito Brightest Star
The Darkness of Salem: QUEST: La notte di Salem Capitolo 1
CRSED: F.O.A.D. → Brutale sparatutto MMO in cui vince l'ultimo giocatore che resta in vita nell'arena! Ogni giocatore sarà accompagnato da armi realistiche e magie!
ramen ha recensito One Piece World
Il genere Pokémon raggiunge i 300 giochi catalogati!
War Thunder: Gloire: Potenziamenti utili!
sparhawack ha recensito Hikaru No Tohei - Le Luci di Tohei
Enlisted → Guida la tua squadra di soldati in combattimenti su larga scala, con fanteria, veicoli corazzati e aerei della IIa Guerra Mondiale!
sparhawack ha recensito Exclusive Villa GdR
I dati del generatore di rank sono stati aggiornati!
Ex Gratia GDR: Aggiunta la Timeline ufficiale!
Western Redemption Gdr: Nuovo minigioco - Crazy Bullet
RAID Shadow Legends → Plasma i tuoi eroi fino a farli diventare vere e proprie armi viventi e assembla i più epici gruppi d'assalto mai visti finora!
Hogwarts Ends - Intervista alle gestrici del play by forum potteriano Hogwarts Ends!
Mad's Empire - Recensione del GDR Mad's Empire. Entra nell'impero della follia...
Roma Imperiale - Recensione del gioco storico Roma Imperiale. Rivivi i fasti dell'Impero Romano!
Arcana Domine - LARP Isola dei Dannati: il GDR ad altissima risoluzione!
Velocità dei Browser - Scopriamo le statistiche su i browser più veloci per giocare!
Città Virtuali - Ciò che distingue un gdr online da un gioco by forum o by chat, e che la rende più complessa
Awakening New York - Intervista al gestore del GdR moderno Awakening New York. Vivi nella Grande Mela!
Star Trek Genesis - Intervista alla gestione di Star Trek Genesis il play by chat Trek!