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
venus dormiens ha aperto un annuncio di ricerca: Origo Haeredis - Harry Potter Gdr ricerca Giocatore
Metin2: Server Boost Yohara – Dettagli e FAQ
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!
Sea of Conquest: Ci dai una mano ai #PocketGamer Awards 2024?
goldaries ha recensito Games of Thrones Winter is Coming
spike92 ha recensito Il Grande Blu
World of Warship: Aggiornamento 13.11: anteprima
Enlisted → Guida la tua squadra di soldati in combattimenti su larga scala, con fanteria, veicoli corazzati e aerei della IIa Guerra Mondiale!
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!
Enlisted → Guida la tua squadra di soldati in combattimenti su larga scala, con fanteria, veicoli corazzati e aerei della IIa Guerra Mondiale!
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
Ikariam → Su una piccola isola, in qualche parte del Mediterraneo, sorge un`antica civiltà. Sotto la tua guida inizia un`era di ricchezza e di scoperte!
Meccanica dei Gdr - Scopri come sviluppare una meccanica per giochi di ruolo online con questi utili consigli
Polvere Nera - Intervista allo staff del GdR di cappa e pugnale Polvere Nera!
Midgard Shard - Intervista allo Staff dello Shard dell'MMORPG Ultima Online Midgard!
GDR per caso - Le più assurde missive arrivate al gestore di AnnoMille :-)
KnightMyth - Intervista ai gestori del GdR KnightMyth ambientato nel mondo di Harry Potter
eRepublik - Il browser game eRepublik.. L'alba di una nuova era, la tua nazione ha bisogno di TE!