Ciao!
Mi piacerebbe che se mi loggo come utente amministratore dalla homepage, mi caricasse direttamnte la pagina /admin. E' possibile?
cia'
pOg
dopo il logging /admin
Sab, 30/04/2005 - 19:06
#1
dopo il logging /admin
Puoi creare una pagina di tipo PHP, assegnare un alias (ad esempio 'init'), ed usare questo codice:
global $user;
if ($user->uid == 1) $loc = 'admin'; // pagina per admin
else $loc = 'node'; // pagina per altri utenti
drupal_goto($loc);
Nell'amministrazione di Drupal cambia la pagina iniziale e usa 'init' come nuova pagina.
Questo esempio funziona solo se ti colleghi con il primo utente definito (quello con uid=1), ma puoi cambiare a piacimento la logica.
L'unico problema che avrai è che devi pubblicarlo subito, altrimenti il preview esegue il codice e ti manda su un altra pagina....
Per modificare in seguit oquesta pagina, l'unico modo che hai è di usare il link /node/xx/edit scoprendo quale uid è stato assegnato alla pagina che hai creato.
Provato su Drupal 4.6, ma penso vada anche su drupal 4.5.x.
Matteo
Matteo
o meglio per admin tutto ok, ma gli altri utenti non vengono reindirizzati su 'node', anzi tenta di mandare anche loro su /admin, ma li avvisa di non avere i permessi. fa lo stesso al log-out :(
grazie, ma non va...
ciao
pOg
mi sembra strano che non funzioni, perchè $user->uid esiste anche in 4.5.2.
Non è che tu non stia usando clean url ?? Nel caso, le due location saranno '?q=admin' e '?q=node' oppure '?q='
Inoltre, prova a verificare il valore di $user->uid, magari mettendo un
'print $user->uid;' anzichè il Drupal_goto finale.....
Famme sapè....
Matteo
Matteo
... e no, non va :(
'azz,
il campo $user->uid viene valorizzato correttamente ??
La logica viene rispettata (cioè il valore di $loc, scelto in base al controllo, è corretto ??)
Se è così, può darsi che sia un problema della funzione drupal_goto, che funziona diversamente....
Vedo di provare anche io su un 4.5.2....
Matteo
Matteo
Sembra che se tu specifichi 'node' come location, lui vada in 'loop' su se stesso (mi dice raggiunto max. n. redirezioni).
Non ho capito come mai, ho risolto il problema specificando una location diversa da node.
Puoi provare anche tu ??
Matteo
Matteo
... a me continua a tentare di reindirizzare tutti su /admin. con l'utente con uid 1 infatti funge, con gli altri riponde: accesso negato...
tant'e', pOg
Ma se specifichi 'node' esplicitamente come url funziona ??
Se la logica funziona, è un problema di permessi....
Prova a definire una location diversa (ad esempio node/xx per puntare ad una pagina specifica).
Così funziona ???
Matt
Matteo
non capisco bene di che parli come anonimo /node e' raggiungibile!
cmq mi avevi gia' consigliato di provare altre location, ma non va comunque. come ho scritto e' come se la variabile $loc sull'else non andasse per niente perche' prova ad indirizzare tutti su /admin :(
ciao
pOg
Hai modo di controllare il log di apache per capire se ci sono messaggi strani sul suo log??
Cominicio a pensare che ci sia qualche problema a livello Apache (su cui però non sono molto competente)...
Matteo
Se ti piace cantare, visita CANTinCORO
Matteo
ono in hosting su aruba...
pOg
oOg,
non so cosa dirti.
Lo stresso codice gira su aruba qui:
http://www.matteoferrari.org/node/view/15916
che nel caso di un utente non registrato, ti riporta su 'node'.
Drupal è addirittura più vecchio (4.4).
Mi dispiace, ma non so come aiutarti.
sospetto qualche casino con .htaccess....
Matteo
Se ti piace cantare, visita CANTinCORO
Matteo
... non preoccuparti :)
grazie lo stesso per lo sbattimento ;)
ciao!
pOg