GDRCD 5.1 - sito gilde e cancellazione personaggi postato il 12/11/2011 14:23:54 nel forum programmazione, gdrcd e open source e modificato da astro991 il 12/11/2011 14:40:33
Salve a tutti.
Alla fine sono riuscito, piano piano, e grazie all'aiuto di alcuni di voi, a risolvere quasi tutti i problemi che avevo. Grazie infinite. :-)
Ma i due problemai per i quali vi sto chiedendo aiuto con questo topic non li ho mai avuti, quindi vi prego di aiutarmi, anche perché non sono problemi di poco conto.
1)Alla fine ho capito dove sbagliavo, ed ora in SERVIZI-GILDE mi appiono tutte le gilde da me create. Ma ecco il problema: vado su GESTIONE-GESTIONE GILDE E RUOLI e scrivo l'URL del sito della gilda. Ma quando vado su SERVIZI-GILDE l'URL non appare. Perché?
2)Vado su GESTIONE-MANUTENZIONE. Lì c'è scritto Elimina i personaggi provvisoriamente cancellati e sotto c'è il tasto CANCELLA. Quando ci clicco, appare il seguente messaggio:
GDRCD MySQL Error [File: gestione_manutenzione.inc.php; Line: 134]
ErrorCode: 1064
ErrorString: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-1)' at line 1
Dettaglio dell'errore: DELETE FROM clgpersonaggioruolo WHERE personaggio IN (SELECT nome AS personaggio FROM permessi = -1)
Come mai? (io il file gestione_manutenzione non l'ho mai toccato)
Grazie mille. :-)
p.s. se dovete trasformare anche questo topic in una discussione off topic, siete pregati di non rispondere. rispondete solo se sapete come risolvere i miei problemi o se avete bisogno di chiarimenti perché mi sono espersso male. Grazie.
Pagine → 1
12/11/2011 15:59:51
I due problemi che elenchi sono dei bug di GDRCD.
Il primo è una semplice dimenticanza, la pagina non va proprio a prendere l'URL dal database.
Il secondo invece è un orrore di chi ha scritto quel codice.Per tre ragioni (scrivo nel caso che blancks lo legga e lo inserisca nella nuova versione di GDRCD XD):
_Quella query è proprio sbagliata, non ha alcun senso compiuto, manca decisamente un pezzo.
_Per quanto i corsi di basi di dati elogino tanto le query nidificate e per quanto possano risultare comode, SCORDATEVELE. Questo perchè MySql NON fa la minima ottimizzazione sulle query nidificate e potrebbe metterci diversi secondi a eseguire query nidificate. Una query nidificata con la clausola IN può essere sempre riscritta come una INNER JOIN, che viene ottimizzata e impiega qualche microsecondo a venire eseguita.
_Dato che una quantità gigantesca di gdr sono su altervista: Quella pagina di GDRCD esegue delle query di tipo "OPTIMIZE TABLE" subito dopo le cancellazioni: cosa da non fare. Il supporto tecnico di Altervista mi ha confermato che spesso l'esecuzione di query OPTIMIZE invece di ottimizzare i database li corrompe (vero, per esperienza personale)! Non c'è comunque da preoccuparsi perchè i server di altervista eseguono un ottimizzazione dei database periodicamente.
12/11/2011 20:23:49
E' proprio sbagliata quella query. Al di la del problema di efficienza che denuncia leo, from permessi = -1 e' una cappellata, tipico caso di persi pezzi poer strada copiaincollando. Le 3 query precedenti sono corrette (salvo il problema dell'inner query). Quanto all'optimize table quella dev'essere un'aggiunta di blanks.
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD e Open Source Elenco Forum
Metin2: Nuovo evento all'orizzonte!