Dividere gli utenti in base alla razza postato il 29/09/2012 18:15:34 nel forum programmazione, gdrcd, open source, hosting
Salve a tutti.
Sto usando il gdrcd 5.1. Vorrei creare una pagina (chiamiamola ELENCO.INC.PHP) che permetta suddivida gli utenti per razza. Mi spiego meglio: supponiano che ci siano i pg A, B, C che sono della razza RAZZA1, i pg D, E, F che sono della razza RAZZA2 e il pg G che è della razza RAZZA3. Vorrei che nella pagina si veda una cosa del tipo:
RAZZA1
A
B
C
RAZZA2
D
E
F
RAZZA3
G
A dire il vero, vorrei che vi fossero anche i link che rimandano alla scheda dei pg e al sito della razza. Quindi diventerebbe una cosa del tipo:
RAZZA1 (sito razza1)
A (scheda di A)
B (scheda di B)
C (scheda di C)
...
Ad inserire i link dei siti esterni e della scheda non ci ho nemmeno provato fin'ora. Ho provato a fare la parte di inserimento dei pg, quindi il primo esempio, quello senza link. Ho scritto il seguente codice (che so essere sbagliato):
Pagine → 1
29/09/2012 19:05:56 e modificato da leoblacksoul il 29/09/2012 19:06:53
Questa cosa ha almeno due soluzioni. La tua soluzione con due query (che però è sbagliata perchè la seconda query dovrebbe dipendere dai dati estratti dalla prima, non deve essere indipendente).
Oppure una soluzione più efficiente che usa una query sola e sfrutta in modo un po' più furbo gli ordinamenti del database:
29/09/2012 20:56:10
No no, è giusto, è giusto..funziona..
Ho studiato il codice che mi hai dato, e ho capito dove sbagliavo.
L'unica cosa che non ho capito è cosa fa la funzione INNER JOIN. Non la conoscevo. Potresti spiegarmelo per favore? Così imparo e non dovrò più chiedere come fare queste cose.
29/09/2012 21:21:01
La INNER JOIN è uno dei tipi di JOIN possibili in sql.
Le JOIN uniscono insieme più tabelle in una tabella unica. Il modo con cui le tabelle vengono unite viene specifica da cosa viene scritto dopo la clausola "ON" che deve specificare quale campo della prima tabella deve venire confrontato con quale campo della seconda tabella.
la Join di tipo INNER costruisce una tabella in cui ci sono solo i dati delle due tabelle di origine che soddisfano completamente la condizione imposta dalla clausola ON
questo è il tipo di join più usato
esistono anche la LEFT JOIN e la RIGHT JOIN che sono l'una lo speculare dell'altra.
La LEFT JOIN prende TUTTI i dati della tabella di sinistra e ci aggiunge i dati della tabella di destra in base alla condizione ON. Se non vengono trovati dati coincidenti per alcuni dati della tabella di sinistra, allora tutti i dati corrispondenti della tabella di destra risulteranno NULL
29/09/2012 21:37:07
Ah ok, ora ho capito. Sei stato chiarissimo. Grazie.
01/10/2012 16:25:29
Mi è venuta in mente un'altra idea, ma non so come impostare la pagina. L'idea sarebbe di inserire, accanto al nome del pg, anche una piccola descrizione che dica quale ruolo ricopre all'interno della razza. Una cosa del genere insomma:
RAZZA1
A caporazza
B vice
C soldato semplice
...
Nella tabella delle razze ho inserito due campi che ho chiamato permessi1 e permessi2. Qui, dal pannello di gestione, inserirò i nomi dei due pg che hanno i permessi per modificare i gradi all'interno della razza.
Quello che non so come fare è creare una nuova pagina (chiamiamola ADM_RAZZA) in cui se il nome del pg corrisponde o a quello inserito in "permessi1" o a quello inserito in "permessi2", allora puoi amministrare la razza, altrimenti no.
Poi, nella pagina ELENCO di sopra, non so come fare il richiamo al campo GRADO che ho creato nella tabella delle razze.
Potete aiutarmi?
modifico perché dimenticavo una cosa importante: gli amministratori della land devono poter apportare modifiche a tutte le razze.
04/10/2012 22:14:51
Piano piano, non so ancora come, sono riuscito a creare la pagina ADM_RAZZA che permette l'amministrazione delle razze. Quello che mi manca da fare ora è:
1) inserire i permessi alla pagina ADM_RAZZA
2) far capire alla pagina ELENCO che se io modifico la pagina ADM_RAZZA questa deve modificarsi a sua volta, ossia:
nella pagina AMD_RAZZA scrivo, accanto al nome del pg, "caporazza" (quindi vedrò una cosa del tipo:
Tizio Caporazza ). Nella pagina ELENCO devo quindi visualizzare:
Tizio Caporazza.
3) far sì che nella pagina ADM_RAZZA restino le modifiche fatte. Adesso, infatti, quando scrivo, per esempio, "caporazza" e clico su "modifica" (un tasto submit) non mi resta la scritta
Tizio Caporazza
ma la scritta "Caporazza" sparisce, mentre io vorrei che rimanesse così quando devo andare a modificare una sola cosa non mi tocca riscrivere tutto.
Ci sono diventato scemo, ma queste cose non so farle. Per favore, aiutatemi!
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
ophelia ha aperto un annuncio di ricerca: The Coven ricerca Giocatore
Another Year Of Disaster: Riapertura Iscrizioni - Back to school!
CRSED: F.O.A.D. → Brutale sparatutto MMO in cui vince l'ultimo giocatore che resta in vita! Il giocatore sarà accompagnato da armi realistiche e magie!
Hero Wars: ⚔️ Il torneo di Titan Power è iniziato!
Enlisted: Operation "Market Garden"
I dati del generatore di rank sono stati aggiornati!
Black Sails Chronicles: ON - Mastro Corvino
The Coven → Negli scorci di luce delle paludi della Louisiana fioriscono nuove ombre. Estend e la Congrega ti aspettano per vivere emozionanti avventure!
AlterEgo: Alza il Boccale, se no finisce male! (Quest)
RAID Shadow Legends: Evento "Febbre di Caduta"
alexstrass ha aperto un annuncio di ricerca: Castelnere ricerca Tester
Entropia Universe: Note sulla versione di Entropia Universe 19.0.0
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 gestore di Naruto x Boruto GDR - New Rebirth ha risposto alla recensione di ilterrorista
Il gestore di Naruto x Boruto GDR - New Rebirth ha risposto alla recensione di aura666
Tesi di Laurea → I giochi di ruolo come strumento pedagogico
Ex Gratia GDR: Elezioni in vista per Taiyang
World of Warship → MMO gratuito con frenetiche battaglie navali ambientate nel ventesimo secolo. Salpa con la tua nave ed affronta i nemici!
Esports - eSports: sempre al top secondo le ultime rilevazioni!
Luca Ferrara - Intervista al creatore di Star Trek Genesis...
Intervista ToSS - Intervista ai gestori del GdR play by chat ambientato nei Forgotten Realms!
Motivo Tristaniano - Geis, beivre e lovendrant: la riscrittura nel motivo tristaniano del filtro d'amore
Il Power Player - L'espressione Power Player é entrata nell'immaginario collettivo come sinonimo di pg che vogliono vincere
Papaboys e GdR - Di papaboys, giochi di ruolo e disinformazione..
Soft Skill e D&D - Il gioco di ruolo applicato alla formazione delle soft skill in azienda: il caso studio Dungeons and Dragons!