Mysql
 sql >> Database >  >> RDS >> Mysql

PHP MySQL Yii - lettura del database non scrittura

Il rendering di notice pagina non interrompe il reindirizzamento. Potrebbe essere visualizzato, ma non sarai in grado di vederlo a causa del reindirizzamento. Prova a refactoring del codice.

  • Stai convalidando il tuo modello due volte e la convalida potrebbe essere saltata poiché non ci sono dati provenienti dall'utente dell'app.
  • Non controlli se People modello effettivamente trovato.
  • C'è CWebUser::afterLogin metodo che puoi ignorare per fare questo tipo di cose (aggiorna il conteggio degli accessi e la data dell'ultimo accesso)

Forse in questo modo (soluzione rapida) funzionerà:

function actionIndex()
{
    if ($_GET["yep"] == "") {
      pd_error("You are not logged in!");
    }
    list($uid, $domain) = preg_split("/@/",$_GET["yep"],2);
    if (null === ($model=People::model()->findByPk($uid))
        throw new CHttpException(404);
    $model->Login_Count++;
    $model->Last_Logged=date('Y-m-d H:i:s');
    if ($model->save()) {
         $this->redirect($model->URL."?".$model->Unique_ID);
    } else {
        // echo CHtml::errorSummary($model)
        $this->render('notice');
    }       
}