Back to top

Autore Topic: Login diretto con dati di accesso senza form  (Letto 1741 volte)

Offline waterseven

  • Nuovo arrivato
  • *
  • Post: 18
    • Mostra profilo
Login diretto con dati di accesso senza form
« il: 13 Mag 2013, 22:27:02 »
Salve, sto realizzando un portale nel quale ho creato una struttura adiacente per la registrazione il recupero e il login degli utenti (caso particolare), ho creato un utente registred in joomla dando ad esempio nome user psw user.
Effettuato il login il php esterno mi va a controllare la tabella utenti esterna a joomla e verifica il login se è ok dovrebbe effettuare direttamente il login all'utente user (senza passare dal form login di joomla), ad esempio faccio un header con campo user e psw per il login e joomla effettua il login.
Ho provato a ricavare il login tramite il form cambiando post in get ma cosi facendo invalido il token e quindi la soluzione è usare jfactory come se fosse un plugin esterno.
Qualcuno sa come posso fare ?


Grazie anticipatamente


Aggiornamento , ho trovato questo ma quando viene eseguito mi genera un oggetto con tutti i campi dell'user che sarebbe la funzione dump , ma non effettua il login se refresho la pagina facendo un echo user è ancora guest:



Codice: [Seleziona]
define('_JEXEC', 1 );
define('DS', DIRECTORY_SEPARATOR);
define('JPATH_BASE', dirname(__FILE__) . DS . '..' . DS . '..' . DS . '..'); // assuming we are in the authorisation plugin folder and need to go up 3 steps to get to the Joomla root


require_once (JPATH_BASE .DS. 'includes' .DS. 'defines.php');
require_once (JPATH_BASE .DS. 'includes' .DS. 'framework.php');
require_once (JPATH_BASE .DS. 'libraries' .DS. 'joomla'. DS. 'user' .DS. 'authentication.php');


$mainframe =& JFactory::getApplication('site');
$mainframe->initialise();


$credentials = array(
    'username' => 'test',
    'password' => 'test');


$options = array();


$authenticate = JAuthentication::getInstance();
$response   = $authenticate->authenticate($credentials, $options);


if ($response->status === JAUTHENTICATE_STATUS_SUCCESS) {
    echo('[br /]It works[br /]');
}
var_dump($response);
« Ultima modifica: 14 Mag 2013, 01:45:30 da waterseven »

Offline ventus85

  • Instancabile
  • ******
  • Post: 6538
  • Sesso: Femmina
  • Affetta da Joomlaite
    • Mostra profilo
Re:Login diretto con dati di accesso senza form
« Risposta #1 il: 14 Mag 2013, 09:58:48 »
Ciao.
Se ho capito bene vorresti fare una specie di Single Sign On?
Su http://extensions.joomla.org hai controllato se esistono dei plugin ad hoc? Quale versione di Joomla stai utilizzando, la 2.5?
Le credenziali che vorresti utilizzare arrivano da tabelle già esistenti o di altre applicazioni?
Se volete aiuto non mandate messaggi privati, ma usate la funzione Cerca e postate sul forum, grazie!

Born in the wind, born to be wild!

Offline waterseven

  • Nuovo arrivato
  • *
  • Post: 18
    • Mostra profilo
Re:Login diretto con dati di accesso senza form
« Risposta #2 il: 14 Mag 2013, 10:23:51 »
Sono su joomla 2.5 si in poche parole ho realizzato un file login il quale verifica user e password su una seconda tabella e qualora ritornasse true si deve fare il login da login.php su un utente generico user di joomla e il reindirizzamento alla pagina impostata come registered dove poi con le sessioni carico tutti i dati dell'utente dalla tabella esterna.


Le credenziali le imposto io su login sono univoche per tutti ossia user user:
Codice: [Seleziona]
$credentials = array(    'username' => 'user',    'password' => 'user');Il problema è il login da esterno senza form, perchè se utilizzassi un form il problema non esisterebbe ma io ho il mio form che punta al mio php che dovrà poi verificare e reindirizzare loggando sull'utente user
« Ultima modifica: 14 Mag 2013, 10:46:12 da waterseven »

 



Web Design Bolzano Kreatif