15 aprile 2005 alle 12:30:23 Modificato il 15 aprile 2005 alle 12:35:53Ciao ragazzi/e! Allora, mi gira l'uzzolo di fare in modo che alcune pagine siano visibili solo da determinate persone e non da altre.
Ho visto nel file menuitems.xls che è possibile fare in modo che ad una determinata voce del menu possa accedere un utente con un determinato RUOLO. Questo mi sta bene fino ad un certo punto, perchè (ad esempio) potrei fare accedere a determinate pagine soltanto ai NEWSER piuttosto che a eventuali CoAdmin... Quello che invece vorrei è che gli utenti possano accedere o meno a determinate pagine indipendentemente dal RUOLO (eccenzione fatta per l'Amministratore, ovviamente).
Ho visto che è possibile assegnare una CATEGORIA agli utenti e fare in modo che, tramite questa assegnazione, si possa accedere a specifiche aree: è possibile fare lo stesso per le pagine?
Se date un'occhiata al mio sito, nel menu di SX c'è una voce chiamata AREA RISERVATA che punta ad un file. Usando le CATEGORIE è possibile fare una selezione su chi può accedere o meno a questo file?
Per intenderci: questo codice, C&P dal manuale
If IsAuthorizedCat("PLAYERS") or IsAuthorizedCat("LETTORI") Then
dove dovrei usarlo (ammeso che sia questo il codice giusto da usare)?
Spero di essere stato chiaro. Nel frattempo mi rispulcio il forum/manuale...
15 aprile 2005 alle 14:13:00 E' esattamente quello il codice da usare nella pagina ASP: io ad esempio ho scritto
<!-- #include file='includes/includes-inc.asp' --> <!-- #include file='includes/xxx-inc.asp' --> <% sTitlePage = GetTranslation("LANG_xxx") sInfoPage = "Area riservata" %> <!-- #include file='includes/toppage-inc.asp' --> <% If IsAuthorizedCat("XXXXXXX") Then DisplayReserved() Else DisplayNoaccess() End If %> <!-- #include file='includes/bottompage-inc.asp' --> <!-- #include file='includes/clearitall-inc.asp' -->
Naturalmente nel file 'includes/xxx-inc.asp' dovrai inserire le due funzioni DisplayReserved e DisplayNoaccess
--------------- Frank Zalabard(sviluppo@aspnuke.it)
cicciocappuccio Utente
89 Discussioni
15 aprile 2005 alle 16:44:15 Il codice usato nella pagina xxxxx.asp è il seguente
<!-- #include file='includes/includes-inc.asp' --> <% sTitlePage = "Area Riservata - VERSIONE DI PROVA" %> <!-- #include file='includes/toppage-inc.asp' --> <% If IsAuthorizedCat("autorizzati") Then DisplayReserved() Else DisplayNoaccess() End If %> <!-- #include file='includes/riservata-inc.asp' --> <%DisplayMiaPagina()%> <!-- #include file='includes/bottompage-inc.asp' -->
e se non ho capito male dovrebbe essere giusto. Ora però non ho chiaro come inserire le due funzioni DisplayReserved e DisplayNoaccess nel file includes/xxxxx.asp!! Ho intuito a cosa serve la DisplayNoaccess ma la sua cugina DisplayReserved mi è un po' oscura.........
Già che ci siamo, ti chiedo un'altra cosa. Tu hai usato questo codice: sTitlePage = GetTranslation("LANG_xxx") sInfoPage = "Area riservata" mentre io ho usato <%sTitlePage = "Area Riservata - VERSIONE DI PROVA" %> Che differenza c'è, visto che quello che ho messo io funziona esattamente come vorrei?
Zalabard, non so se mai ci incontreremo ma se succederà, ricordami che ti devo qualche decina di pinte di birra.... --------------- Andrea http://www.gilmor.it
15 aprile 2005 alle 17:42:59 Allora, partiamo dal più semplice: - il codice sInfoPage = "Area riservata" mette questa scritta A DESTRA nella riga di info (e il TITOLO a sinistra) mentre il tuo mette tutto insieme a SINISTRA è solo una questione di gusti....
- riprendendo il tuo esempio puoi scrivere qualcosa del genere:
<!-- #include file='includes/includes-inc.asp' --> <% sTitlePage = "Area Riservata - VERSIONE DI PROVA" %> <!-- #include file='includes/toppage-inc.asp' --> <!-- #include file='includes/riservata-inc.asp' --> <% If IsAuthorizedCat("autorizzati") Then DisplayMiaPagina() Else CreateTable "Role", "", GetTranslation("LANG_MUST_HAVE_ROLE"), "" End If %> <!-- #include file='includes/bottompage-inc.asp' -->
Al posto del CreateTable "Role", ... puoi richiamare una funzione nella tua pagina "riservata-inc" che spiega esattamente perché è proibito l'accesso e come fare per essere ammessi all'area riservata, ecc...
Compreso?
--------------- Frank Zalabard(sviluppo@aspnuke.it)
cicciocappuccio Utente
89 Discussioni
15 aprile 2005 alle 17:54:30 Modificato il 15 aprile 2005 alle 17:57:59Mi dispiace dirti che non ho compreso affatto... Allora, vediamo di trovare una "media res"... Ho due files: /riservata.asp e /includes/riservata-inc.asp
Nel file /riservata.asp ci inserisco il codice che mi hai suggerito:
<!-- #include file='includes/includes-inc.asp' --> <% sTitlePage = "Area Riservata - VERSIONE DI PROVA" %> <!-- #include file='includes/toppage-inc.asp' --> <!-- #include file='includes/riservata-inc.asp' --> <% If IsAuthorizedCat("autorizzati") Then DisplayMiaPagina() Else CreateTable "Role", "", GetTranslation("LANG_MUST_HAVE_ROLE"), "" End If %> <!-- #include file='includes/bottompage-inc.asp' -->
Ma nel file /includes/riservata-inc.asp tu mi hai detto (se non ho capito male) di inserire le due funzioni DisplayReserved e DisplayNoaccess. Non ho capito come e dove devo inserire queste funzioni nel /includes/riservata-inc.asp...
So bene che il problema è la mia assenza di conoscenza di ASP ma, ad esempio, il codice che mi hai scritto nella tua ultima risposta è diverso dal precedente e questo mi ha messo in confusione......... Ad esempio: il LANG_MUST_HAVE_ROLE è una cosa già pronta di AspNuke oppure me la "dovrei" fare io?
--------------- Andrea http://www.gilmor.it
15 aprile 2005 alle 18:49:01 Ma la pagina riservata-inc.asp dovresti già averla inclusa, stando al tuo codice e dentro dovresti avere la funzione DisplayMiaPagina che TU hai definito (ho messo questa al posto di "DisplayReserved" che era un nome a caso...).
La funzione CreateTable "Role", "", GetTranslation("LANG_MUST_HAVE_ROLE"), "" è standard e visualizza una piccola tabella centrale con scritto "Non hai il ruolo richiesto". Per questo dicevo di scrivere, nel file riservata-inc.asp una funzione che scriva qualcosa di più esplicativo: usa un po' di HTML e/o di "Response.Write...." copiando dal coside esistente per altre pagine
--------------- Frank Zalabard(sviluppo@aspnuke.it)
cicciocappuccio Utente
89 Discussioni
15 aprile 2005 alle 18:52:44 Modificato il 15 aprile 2005 alle 18:55:56Ok, provando e riprovando sono riuscito a fare qualcosa... Zalabard, se vuoi dare un'occhiata e dirmi che ne pensi....
Io sono soddisfattissimo in quanto persona completamente a digiuno di programmazione, ASP e quant'altro!!!
Ora il prossimo passo consiste in questo: dalla pagina "riservata" voglio aprire altre pagine che abbiano le stesse caratteristiche di quelle riservate, ovvero che siano visibili solo a chi ha i ruoli giusti...
Suppongo che debba creare delle pagine in tutto e per tutto simili a quella "principale" dove però cambino i contenuti, giusto? Ora provo...
Zal, vale sempre la storia delle birre.
--------------- Andrea http://www.gilmor.it
15 aprile 2005 alle 19:11:30 Beh, per essere a digiuno di ASP non è male. L'area riservata va bene, anche il messaggio dice tutto.
Solo un paio di consigli: 1. la home page ha un po' troppe tabelle "sparse" e non allineate nella parte centrale e lo scroll degli eventi taglia i bordi della tabella; secondo me non hai chiuso bene l'HTML delle tabelle, prova a controllare 2. il sito è un po' troppo "aspnuk-iano" come colori etc.: cerca di personalizzarlo di più con i TUOI colori e gusti.
Continua così --------------- Frank Zalabard(sviluppo@aspnuke.it)
cicciocappuccio Utente
89 Discussioni
16 aprile 2005 alle 16:25:04 Grazie per i consigli! Per quanto riguarda lo stile "aspnukiano" ho rielaborato tre temi presi da qui, adattandoli all'uso dei "roundbox": Starlight, Ufomania e Medieval giusto per iniziare a capire come funziona la rammera... Medieval, oltretutto, è stato personalizzato per essere dedicato a GiRSA (il mio gioco di ruolo preferito). Sono in fase di elaborazione un tema "Hobbit" che poi posterò anche qui e un mio tema personale... Anche se in testa avrei l'idea di fare, sempre dedicato a GiRSA/Tolkien, un tema hobbit, uno elfico e uno nanico... Insomma, le idee non mi mancano!
Lo scroll degli eventi che taglia i bordi non l'ho visto... Io uso firefox e la tabella è intera e intonsa... Proverò con M$IE e qualche altro browser, tanto per essere sicuro.
In effetti stavo pensando un riadattamento della home page. C'è mica il sistema di fare apparire qualcosa accanto alle varie voci del menù di sinistra quando c'è qualche cosa di nuovo? Mi spiego meglio: ad un nuovo messaggio sul forum, una iconcina minuscola con la dicitura new... O magari qualche altra opzione per segnalare che ci sono stati aggiornamenti nelle varie sezioni, senza per forza tenere le tabelle aperte... Mmm.. Spero di essere stato chiaro ma è sabato pomeriggio, mi sto preparando per il seratone e ho la testa un pochino per altri lidi...
Vorrei fare, diciamo, una "provocazione": e se volessi riservare solo ad alcune categorie di articoli la visualizzazione ad alcune categorie di utenti?
Ovvero articolo?id=1 riservato alla categoria utenti "riservati1", articolo.asp?id=2 riservato alla cat utenti "riservati2", ecc..