Bugs nel sistema di messaggistica del gdrcd 5.1 postato il 02/08/2012 11:13:52 nel forum programmazione, gdrcd, open source, hosting e modificato da clemence il 24/12/2012 23:45:08
Ciao a tutti!
Ho trovato alcuni bugs nel sistema di messaggistica del gdrcd 5.1. presenti nel file messages_center.inc.php (sia in quello della versione base che in quello della patch di sicurezza).
Visto che alcuni di questi problemi li ho risolti mentre altri no, e visto che non c'è una discussione dedicata esclusivamente ai problemi legati la messaggistica del gdrcd 5.1 advanced, ho pensato bene di aprire questa discussione, in modo da fornire e trovare soluzioni.
Per essere sintetici, sono questi i problemi che ho trovato:
1. Interruzione della segnalazione del nuovo messaggio appena si clicca sul link dei messaggi
(Risolto: basta inserire sostituire la riga 7 del file messaggi.inc.php con questa riga:
)
2. Rallentamento del sito alla prima ricezione di un messaggio
(Risolto: In effetti non è un vero problema... Penso che il rallentamento capita solo al primo messaggio perché si doveva caricare il file audio. Ho risolto inserendo un file .swf come suono per i messaggi.)
3. Messaggi inviati a tutta l'utenza segnalati perennemente come non letti anche se vengono letti
4. Possibilità da parte di tutti (anche dei personaggi semplici) di inviare messaggi a tutta l'utenza
L'ultimo problema, in particolare, lo vedo potenzialmente pericoloso. Non mi sento di andare nello specifico per non creare danni alle land che non si sono accorte di questo problema ed hanno gdrcd advanced come base, ma ho notato che qualsiasi personaggio ha la possibilità di inviare messaggi a tutta la land scrivendo una determinata cosa nel campo del mittente.
Infine, c'è una cosa su cui ho bisogno di un chiarimento da parte di qualcuno perché non l'ho capita bene: ma nel gdrcd 5.1 c'è la possibilità di inviare messaggi ai gildati? e se c'è, come funziona?
Ho provato a mettere "super" a capo di una gilda e "test" come suo subordinato, ma non appare niente di nuovo nel menu a tendina sotto il campo del destinatario.
Pagine → 1
02/08/2012 11:38:05 e modificato da clemence il 24/12/2012 23:45:27
02/08/2012 12:19:19
24/12/2012 02:24:18 e modificato da clemence il 24/12/2012 23:46:40
Salve!
A distanza di mesi riesumo questa discussione perché ho trovato altri due bugs che non sono riuscito a risolvere (anzi, non ho neanche compreso da cosa derivano).
I bungs in questioni sono i seguenti:
1. Comparsa di un messaggio di errore quando un personaggio dotato di carica (master, moderatore, admin...) invia un messaggio multiplo a personaggi inesistenti o che hanno un nome errato.
Il messaggio di errore che appare è questo:
24/12/2012 15:08:03
La cosa è semplicissima: riga 29-30 del file messages_center.inc.php
Il controllo di esistenza è già fatto, il problema si evidenzia quando TUTTI i destinatari del messaggio non esistono. Questo genera la query che hai riportato, cioè una query di inserimento senza i dati da inserire.
Come risolvere? All'interno del foreach, invece di concatenare direttamente nella variabile $query usare un'altra variabile nuova. Al di fuori del foreach, deve venire fatto un controllo che la nuova variabile non sia vuota. Se non lo è, allora si procede a concatenare la nuova variabile con la variabile $query e si chiama gdrcd_query, altrimenti non si fa niente.
Per il problema dei permessi: purtroppo GDRCD è progettato così da capo a piedi. Controlla i permessi solo il fase di visualizzazione del form e non dopo che il form è stato inviato, aprendo il software a tutti i tipi di attacchi access bypass. Per ogni funzionalità di invio messaggi dalla riga 12 alla 48, dentro a ogni if ed elseif, devi fare un controllo appropriato dei permessi.
26/12/2012 22:08:00
Grazie Leoblacksoul, proverò la soluzione che hai suggerito, anche perché davvero non vedo altre vie e la pagina non riesco a capirla nella sua completezza.
Ma se ho capito bene, un pg semplice non ha alcun controllo, può inviare ciò che vuole a chi vuole. Ho notato che è per un pg semplice è possibile inviare messaggi anche a personaggi inesistenti, volendo.
26/12/2012 23:17:12
si è esatto. L'autore originale di quella pagina è stato pigro e non ha fatto tutti i controlli dovuti.
Comunque la cosa più importante è inserire il controllo permessi dentro a ogni if
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
spike92 ha recensito Il Grande Blu
World of Warship: Aggiornamento 13.11: anteprima
Sea of Conquest → Vivi un'avventura tra i mari! Dal cuore del Mare del Diavolo, un paradiso piratesco brulicante di magia, tesori e avventure, salperai verso l'ignoto!
gdr-online.com ha risposto alla discussione: Parere su BrowserGame
W40K Dathyar: Specializzazioni
NosTale: Ora nel NosMall: dolcissimi mini-pet
DarkOrbit: Aggiorna la scatola dell'Apocalisse!
Crossout → Tuffati nel mondo di Crossout, il gioco MMO d'azione post apocalittico! Costruisci le tue speciali macchine da combattimento!
I dati del generatore di rank sono stati aggiornati!
aik ha aperto una nuova discussione: Parere su BrowserGame
eXtremelot: La Bussola dei Cartografi di Lot
Dallas Black Gold: [Trama] JFK Memorial
World of Warship → MMO gratuito con frenetiche battaglie navali ambientate nel ventesimo secolo. Salpa con la tua nave ed affronta i nemici!
Hero Wars: Artefatti dei Titani!
bother ha recensito Never Have I Ever: Mysteries of Laconia Bay
Games of Thrones Winter is Coming: #giveaways codice regalo! 🥳
Enlisted: Migliorare e ottimizzare le ombre
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.
Pokémon New Adventures - Intervista allo staff del play by chat Pokémon New Adventures!
Stargate SG-1 - Stargate Command Online il gioco ambientato nella serie fantascientica che appassiona milioni di telespettatori
Piume Nere - Intervista ad Isabel Capuzzo, Creatrice di Piumenere.it e attuale Narratore...
Provate D&D! - Dungeons and Dragons: un’esperienza da provare! Scopriamo come!
Forgotten Years - Intervista ai gestori di Saint Seiya City Forgotten Years il play by chat sui Cavalieri dello Zodiaco
Giochi di Politica - Interpreta un capo di stato o un sindaco e porta il tuo paese alla prosperità e al benessere!