J'essaie d'implémenter l'authentification AD dans mon application php, mais j'ai des difficultés à extraire des informations des données utilisateur de session et je ne sais pas pourquoi.

L'authentification fonctionne car je suis capable de me connecter avec les informations d'identification AD et d'afficher WIN, mais je ne peux pas afficher les données de session.

J'essaye d'utiliser cette bibliothèque légère: Auth_AD Codeigniter Library

Contrôleur d'authentification:

public function login()
{


    // read the form fields, lowercase the username for neatness
    $username = strtolower($this->input->post('username'));
    $password = $this->input->post('password');

    // check the login
    if($this->auth_ad->login($username, $password))
    {           

        $data['udcn'] = $this->session->userdata('cn');

        $this->load->view('user/win', '$data');
    }
    else
    {

        $this->load->view('user/lose');
        // user could not be authenticated, whoops.
    }
}

VOIR:

  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
   <head>
   <title>WIN</title>
   </head>
    <body>
         <?php echo $udcn['cn']; ?>
    </body>
   </html>

Toute aide serait grandement appréciée!

0
dotmiikee 28 nov. 2017 à 00:15

3 réponses

Meilleure réponse

Merci à ourmandave!

Supprimez les guillemets simples des données $. Devrait être $ this-> load-> view ('user / win', $ data);

0
dotmiikee 27 nov. 2017 à 22:15

Changez cette ligne $this->load->view('user/win', '$data'); en $this->load->view('user/win', $data); et accédez-y dans votre vue en tant que <?php echo $udcn; ?>

0
Sooraj N Raju 28 nov. 2017 à 05:17

Sur la vue

<?php echo $udcn; ?>

Supprimer le ['cn']

Assurez-vous que vous avez défini le paramètre de configuration de votre session OK dans le fichier config.php

Exemple

$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = APPPATH . 'cache/session/';
$config['sess_match_ip'] = TRUE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = TRUE;
0
Mr. ED 27 nov. 2017 à 21:48
47519906