Back to top

Visualizza post

Questa sezione ti permette di visualizzare tutti i post inviati da questo utente. N.B: puoi vedere solo i post relativi alle aree dove hai l'accesso.


Post - Zarkor

Pagine: [1]
1
Sviluppo / attivazione account
« il: 03 Giu 2010, 11:26:52 »
salve a tutti,
sto creando un componente per la gestione utenti di un sito immobiliare.
Ho il seguente problemino:
Registro un nuovo utente con un paio di query sul db toccando la tabella #__users e un'altra per estendere i campi e fino a li tutto ok. Il problema esce al momento dell'attivazione dell'account.
Ho fatto una prova e se dal pannelo di amministrazione non richiedo l'attivazione dell'account il login funziona, se l'attivazione è richiesta (e per prova io ho attivato l'utente in maniera rozza ossia editando i campi del DB nella tabella #__users) il login non funziona...

Ora la mia domanda è questa: cosa vuol dire, in termini di cambiamenti dei valori dei campi del DB, attivare un utente?
Non vuol dire forse solo cambiare il campo "block" da 1 a 0 ed eliminare l'activation hash?!?
Ho provato a cercare in altri script e i comandi che vengono edseguiti sono solo quei 2 ma a me continua a non autenticare gli utenti :(
qualcuno ha mai affrontato qusto problema o ha idea di cosa può provocare questo mal funzionamento?

uso joomla 1.5 e il login viene gestito dal modulo mod_login.

grazie in anticipo!

2
Sviluppo / Re:creazione utente
« il: 03 Giu 2010, 10:19:21 »
il problema principale era il fattoi di aver chiamato i file con nomi troppo comuni: "user.php".
sicuramente andava in conflitto con qualche redirect e mi dava errori assurdi :S

adesso il problema è un altro... in caso apro un altro topic...

3
Sviluppo / creazione utente
« il: 28 Mag 2010, 17:39:23 »
Salve a tutti,
sto creando un componente per personalizzare la registrazione al mio sito joomla.

Ho un errore in particolare che non riesco ad interpretare...
Quadro della situazione: sto cercando di salvare un nuovo utente nella tabella #__user con il seguente codice php richiamato dal file admin/models/user.php -> class ImmobiliaModelUser extends JModel -> function store() :
[praticamente il metodo che viene richiamato al momento della pressione del tasto "salva" da backend]
Codice: [Seleziona]
// get the ACL
$acl =& JFactory::getACL();

/* get the com_user params */

jimport('joomla.application.component.helper'); // include libraries/application/component/helper.php
$usersParams = &JComponentHelper::getParams( 'com_users' ); // load the Params

// "generate" a new JUser Object
$user =& JFactory::getUser(0); // it's important to set the "0" otherwise your admin user information will be loaded
$data = array(); // array for all user settings

// get the default usertype
$usertype = $usersParams->get( 'new_usertype' );
if (!$usertype) {
    $usertype = 'Publisher';
}

// set up the "main" user information
$data['name'] = $_POST['name'];
$data['username'] = $_POST['username'];
$data['email'] = $_POST['email'];
$data['password'] = $_POST['password'];
$data['password2'] = $_POST['password2'];
$data['password_clear'] = $_POST['password'];
$data['usertype'] = $_POST['usertype'];
$data['gid'] = $_POST['gid'];
$data['sendEmail'] = 1; // should the user receive system mails?

/* Now we can decide, if the user will need an activation */
$useractivation = 1;
if ($useractivation == 1) { // yeah we want an activation
    jimport('joomla.user.helper'); // include libraries/user/helper.php
    $data['block'] = 1; // block the User
    $data['params'] = 0;
    $data['activation'] =JUtility::getHash( JUserHelper::genRandomPassword()); // set activation hash (don't forget to send an activation email)
}
else { // no we need no activation
    $data['block'] = 0; // don't block the user
}

$result = $user->bind($data);// now bind the data to the JUser Object, if it not works....
if(!$result){
    JError::raiseWarning('', JText::_( $user->getError())); // ...raise an Warning
    return false; // if you're in a method/function return false
}

if (!$user->save()) { // if the user is NOT saved...
    JError::raiseWarning('', JText::_( $user->getError())); // ...raise an Warning
    return false; // if you're in a method/function return false
}

ora da cosa ho notato io la variabile password2 crea problemi, nel senso:
se la passo tramite l'array $data (come da sodice sopra) il bind viene eseguito ma lo script muore al momento del "$user->save()".

se non passo alcuna password il bind ne crea una random e la assegna anche a "password2". Questa volta lo script funziona, nel senso che ho un output e joomla mi gestisce un errore in cui scrive "PASSWORD DO NOT MATCH"...

sono un po' in crisi a riguardo... nessuno è in grado di aiutarmi?

Pagine: [1]


Web Design Bolzano Kreatif