Gdrcd5.1 e + skin è possibile?
Pagine → 1 2
08/12/2012 00:01:40
Dovrebbe essere abbastanza semplice. Mostri un menu a tendina nel login con le skin da scegliere. Al momento del login memorizzi la scelta in una variabile di sessione e a ogni pagina che l'utente apre dovresti sovrascrivere le variabili settate nel config per inserire i valori della skin scelta
09/12/2012 01:37:47
leoblacksoul ha scritto: Dovrebbe essere abbastanza semplice. Mostri un menu a tendina nel login con le skin da scegliere. Al momento del login memorizzi la scelta in una variabile di sessione e a ogni pagina che l'utente apre dovresti sovrascrivere le variabili settate nel config per inserire i valori della skin scelta
Grazie per la risposta! :D
07/02/2013 00:37:02
Scusa ma se hai messo la query dentro alla pagina della scheda come fa magicamente a entrare nella pagina del css? Sono due file separati.
Non puoi mettere codice PHP dentro a un file CSS. PHP non viene eseguito dentro a quei file. PHP viene eseguito solo nei file che hanno estensione .php
Per associare uno stile differente alla scheda potresti assegnare una classe all'elemento <body> della scheda in base alla razza a cui appartiene il pg. Poi nel CSS definisci le n classi separatamente, ma solo una alla volta verrà applicata grazie al codice che assegna la classe al body
07/02/2013 04:35:31
Scusate ma sto capendo a fatica la domanda io realtà.. cioè la richiesta specifica.
Allora..
1. Immagine personalizzata in base a gilda/mestiere/razza/pincopallino
Presto fatto, si creano delle immagini diverse per ogni "valore" della specifica che volete considerare, facciamo un esempio per ogni GILDA che avete esistente sulla vostra land, prendendo l'ID della gilda specifica e chiamando le immagini qualcosa tipo: "sfondo_gilda_xx.jpg" dove xx è un numero (se è ad una cifra mettete una sola cifra sennò dovete fare il controllo dello zero iniziale lasciate sta) corrispondente allo sfondo.
Nella pagina in cui volete caricare sto sfondo specifico, leggete dalla $_SESSION['gilda'] (mi pare di ricordare così al volo che le carichi qui dentro gli id di gilda ma controllate nel file "login.php" in caso troverete un un ciclo dove vengono caricati tutti gli id di gilda/mestieri di appartenenza divisi da un carattere mi pare dalla virgola.. -se volete applicare questa soluzione.. presumo che ogni player possa avere un'unica gilda altrimenti non potete certo caricare più immagini di sfondo di gilde diverse .. no? - di conseguenza, come si diceva, nella pagina in cui volete far visualizzare st'immagine di sfondo personalizzata, leggete il parametro dell'id della gilda di appartenenza (pulendolo dai caratteri che login.php mette per gestire più corrispondenze) - usate il comando substr di php (google vi aiuta a scoprire e imparare come si usa nello specifico nel caso, fate sicuramente prima) - quindi mette la vostra bell'immagine di sfondo, calcolando che, come detto già prima di me, i CSS non vengono processati dal server PHP quindi è inutile metterci codice php li dentro, per rendere lo sfondo variabile vi conviene passargli l'url dell'immagine di sfondo stesso nel Div usando il parametro style="" e mettendo così la vostra variabile con l'id di gilda pulito (quindi togliendo eventuali virgole in eccesso.. questo sempre se avete una gilda per ogni utente.. altrimenti dovete usare 'explode' ma in caso vi prende poi il primo id di gilda e ignora i successivi) e vi caricate il vostro bel file personalizzato richiamandolo con una cosa simile
<div style="background: url(imgs/sfondi/sfondo_gilda<?php echo $id_gilda; ?>">
//ovviamente $id_gilda l'avete riempita prima con l'id corretto sennò vi fa una pernacchia.
/* Codice del contenuto del div specifico che andrà sopra l'immagine */
</div>
1. skin o grafica personalizzata con scelta utente
- Va aggiunto un campo sul Database per salvare la scelta della skin, dandogli ovviamente un parametro di default con una skin base, altrimenti chi entra la prima volta vede la pagina senza css ne grafica sballata completamente
- In themes va creata una cartella per ogni skin che volete mettere, con LA STESSA STRUTTURA della cartelle.. e lo STESSO NOME DEI FILE per ogni cartella skin che create.
- Impostare su config.inc.php di impostare il $_SESSION['current_theme'] il nome della cartella relativa ad una skin di base di default SE il parametro non è stato impostato altrimenti si imposta il PARAMETERS corrispondente con il contenuto del parametro della SESSION, va quindi controllato grosso modo così per darvi un'idea:
if (!isset($_SESSION['current_theme'])){
PARAMETERS['current_theme']='nomecartellaskinbase';
}else{
PARAMETERS['current_theme']=$_SESSION['current_theme'];
}
in login.php ovviamente va riempita la var $_SESSION['current_theme'] con il valore che si trova nel campo del db aggiunto e in cui è stata salvata la scelta dell'utente per la skin.
In questo modo una volta fatto il login il config imposterà dinamicamente il parametro current_theme che è già presente in tutto il gdrcd5.1 per il caricamento dei css, delle immagini e di quant'altro.. così in base alla skin scelta andrà a pescare css e immagini dalla cartella della skin corrispondente.
Va ovviamente poi aggiunto un campo di scelta della skin. Che se volete far prima e non avete mille skin, basta popolare una <select> a mano modificando il file ogni volta che aggiungete una skin nuova, altrimenti vi fate un'altra tabella sul db, in cui mettete la lista delle skin presenti, con i nomi della cartelle e magari un nome di presentazione da far apparire nella scelta e caricate a quel punto una <select> di scelta dinamicamente ogni volta dal db. Vi aggiungete una pagina in gestione per aggiungere le nuove skin alla tabellina nuova e state a posto così.
--------------------------------------
Spero vi sia di aiuto questo breve sunto di entrambe le scelte. Poi come detto su New Dojinshi ci sono diverse impostazioni personalizzate a scelta dell'utente.. se volete provare a buttare un occhio sulla scheda di gdr-online ci sono i dati di accesso con l'utente "visitatore" per visionare l'interno senza registrarsi, aprite il profilo utente e trovate i pulsanti impostazioni grafiche e impostazioni audio, buttate un occhio tanto per rendervi conto di cosa e come si può fare magari se vi interessa.
Discussione seguita da
Pagine → 1 2
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, Open Source e Hosting Elenco Forum
Articoli, Interviste e altre Risorse!
Fallen Gods ↗
World of the Sea Battle ↗
State of Survival ↗
Wuthering Waves ↗