public function authenticate() { //cerco l'utente $this->username nella classe User //Controllo nel DB Utenti per default si controlla nella Tbl Utenti //$record=User::model()->findByAttributes(array('username'=>$this->username)); //il rigo seguente chiama il model utenti per fare l'autenticazione. $record = Utenti::model()->findByAttributes(array('username' => $this->username)); //e non lo trovo if ($record === null) { $this->errorCode = self::ERROR_USERNAME_INVALID; } else { if ($record->password !== $this->password) { $this->errorCode = self::ERROR_PASSWORD_INVALID; } else { //mi segno l'id dell'utente autenticato $this->_id = $record->id; $this->setState('email', $record->email); $this->setState('id', $record->id); $this->setState('title', 'titolo'); // metto in variabile il nome $this->setState('nome', $record->nome); /* se voglio mi posso memorizzare in sessione altri dati dell'utente loggato $this->setState('title', 'titolo'); $this->setState('cognome', $record->cognome); Yu::app()->user->titolo Qui ci sono maggiori informazioni in merito per estendere la classe User http://www.yiiframework.com/forum/index.php?/topic/22225-yiiapp-user-name-extender */ $this->errorCode = self::ERROR_NONE; //nessun errore, tutto ok! } } return !$this->errorCode; //true = do il conseso a loggare l'utente }
public function actionIndex() { $argomenti = Argomenti::model()->FindAll(array('order' => 'Titolo')); $moderatori = Utenti::model()->getNamesById(); $i = 0; foreach ($argomenti as $argomento) { $discussioni[$i++] = Discussioni::model()->findAll('Argomento =' . $argomento->ID); } $data['argomenti'] = $argomenti; $data['moderatori'] = $moderatori; $data['discussioni'] = $discussioni; $this->render('index', $data); }
function run() { if (empty($_GET['id'])) { throw new CHttpException(404); } $model = Utenti::model()->findByPK($_GET['id']); if ($model === null) { throw new CHttpException(404); } $model->stato = $model->stato == 1 ? 0 : 1; if ($model->update()) { $this->controller->redirect(array('index')); } throw new CHttpException(500); }
public function authenticate() { if (!$this->hasErrors()) { $record = Utenti::model()->findByAttributes(array('Email' => $this->username)); if ($record === null) { $this->errorCode = self::ERROR_USERNAME_INVALID; } else { if ($this->password != $record->Password) { $this->errorCode = self::ERROR_PASSWORD_INVALID; } else { $this->_identity = new UserIdentity($record->Email, $record->Password); $this->_identity->setState("Name", $record->Nome); return $this->_identity; //$this->errorCode=self::ERROR_NONE; } } return !$this->errorCode; } }
/** * Esegue la registrazione del nuovo utente all'interno del db. * @return boolean : true se riesce a registrarlo */ public function save() { /* Questa funzione � esposta pubblicamente e messa a disposizione * di chiunque volesse memorizzare una nuova utenza su db */ //creo un AR e indico che voglio lavorare con lo scenario register $utente = new Utenti('register'); //Dato che i campi del modello User si chiamano quasi tutti come quelli di questa classe, //posso permettermi il lusso di fare cos�: $utente->attributes = $this->attributes; //passo tutti i campi del modello all'active record //l'unico campo che si chiama diversamente � questo: // $utente->remember = $this->rememberMe; //$utente->amministratore_id = Yii::app()->user->id; $utente->id_amministratore = Yii::app()->user->id; //provo a salvare e restituisco l'esito del risultato return $utente->save(); }
public function getNamesById() { $utenti = Utenti::model()->findAll(); $r; foreach ($utenti as $utente) { $r[$utente->ID] = $utente->Nome . " " . $utente->Cognome; } return $r; }
<?php session_start(); error_reporting(E_ALL & ~E_NOTICE); require "./system/ClassCRUDetail.php"; require "./system/ClassUtenti.php"; require "./system/ClassGUI.php"; //Istanzio l'oggetto grafico $gui = new GUI(); //Inizializzo la classe per la validazione $user_auth = new Utenti(); $user_field = $user_auth->attributeLabels(); //Validazione in caso di richiesta login $submit = $_POST['submit']; if (isset($_POST['submit'])) { $attributi = array(); $attributi['utente'] = addslashes($_POST['utente']); $attributi['password'] = addslashes($_POST['password']); $rules = $user_auth->rules(); $esito = $user_auth->validate($rules, $attributi, 2); if (is_bool($esito)) { //I dati sono formalmente corretti. //Verifico l'esistenza di questi dati nell'archivio $attributi['password'] = md5(md5(sha1(md5($attributi['password'])))); $exists = $user_auth->query("SELECT id, stato FROM " . $user_auth->tbl_name . " WHERE utente = '" . $attributi['utente'] . "' AND password = '******'password'] . "'"); echo "SELECT id, stato FROM " . $user_auth->tbl_name . " WHERE utente = '" . $attributi['utente'] . "' AND password = '******'password'] . "'"; if (!$exists) { $esito = "Non risulta nessun utente registrato con questi dati"; } else { //Verifico se l'utente è attivo $exists = mysqli_fetch_assoc($exists); $state = $exists["stato"];
/** * Returns the data model based on the primary key given in the GET variable. * If the data model is not found, an HTTP exception will be raised. * @param integer the ID of the model to be loaded */ public function loadModel($id) { $model = Utenti::model()->findByPk($id); if ($model === null) { throw new CHttpException(404, 'The requested page does not exist.'); } return $model; }
<?php require_once "initback.php"; function get($item, $field) { return $item[$field]; } /* $query = "select * from utenti where username <>''"; $res=mysql_query($query); $fields = mysql_fetch_field ($res); */ $object = new Utenti(); $list = $object->getAll(" and username<>'' "); $xls = ""; $xls = '<table style="width:100%">'; $xls .= '<tr>'; $xls .= '<td>username</td>'; $xls .= '<td>data_primoaccesso</td>'; $xls .= '<td>data_ultimoaccesso</td>'; $xls .= '</tr>'; foreach ($list as $row) { $xls .= '<tr>'; $xls .= '<td>' . get($row, "username") . '</td>'; $xls .= '<td>' . get($row, "data_primoaccesso") . '</td>'; $xls .= '<td>' . get($row, "data_ultimoaccesso") . '</td>'; $xls .= '</tr>'; } $xls .= '</table>'; $filename = "report.xls";