Redirect dopo login

5 contenuti / 0 new
Ultimo contenuto
Redirect dopo login

Ciao a tutti!

Ho bisogno di chiedervi un aiuto. Sto scrivendo un modulo che "esternalizza" l'autenticazione di drupal usando i vari hook modulo_user_insert , ecc...

Dopo che l'utente ha fatto login , avrei bisogno di fare un redirect su un URL esterno.

Al momento il mio codice è:

function extauth_user_login(&$edit, $account)
{
$_GET['destination'] = 'http://www.esterno.it;
}

Ma non funziona , potete aiutarmi ?

Inoltre ho bisogno anche di un altro suggerimento.

Ho bisogno che drupal riceva un post da una pagina di un altro sito. Dove sarebbe più corretto inserire il codice che legge le variabili POST e su che "link" dovrei fare il submit ?

Grazie a tutti

Name29

Drupal Version:

Ciao,
hai provato questo x il redirect http://drupal.org/project/login_destination ?
Io l'ho usato e funziona bene: puoi usare un link interno o esterno e selezionare su che trigger vuoi effettuare il redirect (login, logout, ...).

ciao.

Ciao,

Grazie per il tuo aiuto, ma non riesco a capire come integrare quello nel mio codice.

Ho bisogno di impostarlo da codice perchè il link di destinazione deve cambiare a seconda di alcune condizioni complesse.

Se non mi ricordo male devi usare drupal_redirect($URL)

M.

--
Michel 'ZioBudda' Morelli -- [email protected]
Sviluppo applicazioni CMS DRUPAL e web dinamiche -- Corsi Drupal -- Amministrazione Drupal -- Hosting Drupal

Brutalmente, potresti provare così:

/**
* Implements hook_form_FORM_ID_alter
*/
function mymodule_form_user_login_block_alter(&$form, &$form_state, $form_id) {
    //aggiunge una funzione di submit
    $form['#submit'][] = 'my_submit_handler';
}
/**
*  Funzione di submit per il form.
*  Viene eseguia dopo la funzione user_login_submit ()
*/
function my_submit_handler($form, &$form_state) {
    // Rimuove il valore $_GET['destination'] che ha priorità su $form_state['redirect']
    unset($_GET['destination']);
    // Setta il URL per il redirect
    $form_state['redirect'] = 'http://www.google.com';
}