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 Segui Discussione Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
Fairy Tail GDR: 🌞 Nuovi filoni e media negli esiti!
Crystal Tokyo: Land ottimizzata per cellulari e tablet
Seconda Era → Vaste terre coperte di ombre e misteri, dove ogni eroe scrive la storia del Mondo di Eidel. Seconda Era, play by chat
Black Sails Chronicles: OFF - Aggiornamenti di Novembre
War Thunder: Ottieni l'AK-225 nell'evento Sea Defender!
Crossout: Evento "Sentiero del Corvo" è iniziato!
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!
Storie di Agarthi: Esce una nuova Lancetta delle Trame
sheeptamer ha recensito Hikaru No Tohei - Le Luci di Tohei
New Orleans: Modifiche in Inventario
World of Warship → MMO gratuito con frenetiche battaglie navali ambientate nel ventesimo secolo. Salpa con la tua nave ed affronta i nemici!
Felix Felicis GdR - Harry Potter GdR: Stranger Felix
The Line: Weekly Update n°2 – Scheda del PG
mari_gdr ha recensito Sid - la terra al di là del mare
Enlisted → Guida la tua squadra di soldati in combattimenti su larga scala, con fanteria, veicoli corazzati e aerei della IIa Guerra Mondiale!
Il Panopticon Ludico - Trattato Sociologico: "Il Panopticon Ludico" Sorveglianza, Potere e Discrezionalità nella Gestione dei GDR
Dipendenze - Role-playing game: nuova droga elettronica?
AlterEgo - Scopri AlterEgo GdR: un incredibile universo narrativo in stile medievale fantasy che cresce, muta e vive giorno dopo giorno grazie ai suoi giocatori!
Il Fattore C - Per fattore C s’intende, ovviamente, l’esclamazione «Che fortuna!», pronunciata spesso in ambito ludico.
Pvp, ON e OFF - Trattato Sociologico: Gli effetti distruttivi del Pvp e Confusione On e Off
Token per GdR - Come creare Token per giochi di ruolo gratuitamente e online!
Ignis Fatuus Gdr - Intervista alla gestione del play by chat urban fantasy Ignis Fatuus Gdr
Rivista Game - Game è la prima rivista gratuita di videogiochi con un articolo di approfondimento al mese sui play by chat!
