Creation de scipt pour enregistrer un utilisateur

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] Creation de scipt pour enregistrer un utilisateur

    Bonjour ,
    j'ai réalisé ce script :
    Code PHP:
    <?php 
    define
    ('_JEXEC'1);

    define('DS'DIRECTORY_SEPARATOR);
    if (
    file_exists(dirname(__FILE__) . '/defines.php')) {
        include_once 
    dirname(__FILE__) . '/defines.php';
    }

    if (!
    defined('_JDEFINES')) {
        
    define('JPATH_BASE'dirname(__FILE__));
        require_once 
    JPATH_BASE.'/includes/defines.php';
    }

    require_once 
    JPATH_BASE.'/includes/framework.php';
    $app JFactory::getApplication('site');
    $app->initialise();

    jimport('joomla.application.component.controller');
    jimport('joomla.user.helper');
    jimport('joomla.application.component.modelform');
    jimport('joomla.event.dispatcher');
    jimport('joomla.plugin.helper');

    require_once 
    '/components/com_users/controller.php';

    // echo'<SCRIPT LANGUAGE="JavaScript">alert(\'Vous etes connecte\');</SCRIPT>'; 

    class UsersControllerregister_user extends UsersController
    {
            public function 
    register()
        {
        
            
    $config JFactory::getConfig();
            
    $params JComponentHelper::getParams('com_users');
            
            
    // Initialise the table with JUser.
            
    $user = new JUser;
            
    // $data = (array)$this->getData();
            
    $data = array();
            
    $data['name']= "lettreouillee";
            
    $data['username']= "wozeute";
            
    $data['password1']= "1234";
            
    $data['password2']= "1234";
            
    $data['email1']= "htetee@ya.fr";
            
    $data['email2']= "htetee@ya.fr";
            
    $data ['usertype'] = "Registered";

            
    // Prepare the data for the user object.
            
    $data['email']        = $data['email1'];
            
    $data['password']    = $data['password1'];
            
            
            
    // Bind the data.
            
    if (!$user->bind($data)) {
                
    $this->setError(JText::sprintf('COM_USERS_REGISTRATION_BIND_FAILED'$user->getError()));
                return 
    false;
            }
            
    // Load the users plugin group.
            
    JPluginHelper::importPlugin('user');
            
            
    // Store the data.
            
    if (!$user->save()) {
            echo
    '<SCRIPT LANGUAGE="JavaScript">alert(\'save\');</SCRIPT>'
                return 
    false;
            }
    echo 
    "hey" ;
        
                return 
    $user->id;
                
        }
        }
        
          
    UsersControllerregister_user::register(); 
    ?>

    Ce scrip m'insère bien un nouvel utilisateur dans la base de donnée mais ne me le met pas dans le groupe "enregistré" donc sans aucune intervention de l'admiin, je ne peux me connecter, pourriez-vous m'aider ?
    merci
    Dernière édition par fantomette à 14/05/2012, 15h40
    #_Fantomette

  • #2
    Re : Creation de scipt pour enregistrer un utilisateur

    Envoyé par fantomette Voir le message
    Bonjour ,
    j'ai réalisé ce script :
    Code PHP:
    <?php 
    define
    ('_JEXEC'1);

    define('DS'DIRECTORY_SEPARATOR);
    if (
    file_exists(dirname(__FILE__) . '/defines.php')) {
        include_once 
    dirname(__FILE__) . '/defines.php';
    }

    if (!
    defined('_JDEFINES')) {
        
    define('JPATH_BASE'dirname(__FILE__));
        require_once 
    JPATH_BASE.'/includes/defines.php';
    }

    require_once 
    JPATH_BASE.'/includes/framework.php';
    $app JFactory::getApplication('site');
    $app->initialise();

    jimport('joomla.application.component.controller');
    jimport('joomla.user.helper');
    jimport('joomla.application.component.modelform');
    jimport('joomla.event.dispatcher');
    jimport('joomla.plugin.helper');

    require_once 
    '/components/com_users/controller.php';

    // echo'<SCRIPT LANGUAGE="JavaScript">alert(\'Vous etes connecte\');</SCRIPT>'; 

    class UsersControllerregister_user extends UsersController
    {
            public function 
    register()
        {
        
            
    $config JFactory::getConfig();
            
    $params JComponentHelper::getParams('com_users');
            
            
    // Initialise the table with JUser.
            
    $user = new JUser;
            
    // $data = (array)$this->getData();
            
    $data = array();
            
    $data['name']= "lettreouillee";
            
    $data['username']= "wozeute";
            
    $data['password1']= "1234";
            
    $data['password2']= "1234";
            
    $data['email1']= "htetee@ya.fr";
            
    $data['email2']= "htetee@ya.fr";
            
    $data ['usertype'] = "Registered";

            
    // Prepare the data for the user object.
            
    $data['email']        = $data['email1'];
            
    $data['password']    = $data['password1'];
            
            
            
    // Bind the data.
            
    if (!$user->bind($data)) {
                
    $this->setError(JText::sprintf('COM_USERS_REGISTRATION_BIND_FAILED'$user->getError()));
                return 
    false;
            }
            
    // Load the users plugin group.
            
    JPluginHelper::importPlugin('user');
            
            
    // Store the data.
            
    if (!$user->save()) {
            echo
    '<SCRIPT LANGUAGE="JavaScript">alert(\'save\');</SCRIPT>'
                return 
    false;
            }
    echo 
    "hey" ;
        
                return 
    $user->id;
                
        }
        }
        
          
    UsersControllerregister_user::register(); 
    ?>

    Ce scrip m'insère bien un nouvel utilisateur dans la base de donnée mais ne me le met pas dans le groupe "enregistré" donc sans aucune intervention de l'admiin, je ne peux me connecter, pourriez-vous m'aider ?
    merci

    Je me disais que j'aurais pu ajouter ceci à la fin

    Code PHP:
        $db =& JFactory::getDBO();
        
    $query "INSERT INTO '#__user_usergroup_map' ('user_id') VALUES ('$user->id')";
        
    $db->setQuery($query);
        
    $db->query(); 
    #_Fantomette

    Commentaire


    • #3
      Re : Creation de scipt pour enregistrer un utilisateur

      Bonjour,

      pour l'insertion en user_usergroup_map il faut aussi le group_id (à trouver dans les ids de tes groupes), en général 2 pour enregistré.
      .
      Pas de demande de support par MP.
      S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

      Commentaire


      • #4
        Re : Creation de scipt pour enregistrer un utilisateur

        Oui en fait j'ai résolu mon problème merci !
        #_Fantomette

        Commentaire

        Annonce

        Réduire
        Aucune annonce pour le moment.

        Partenaire de l'association

        Réduire

        Hébergeur Web PlanetHoster
        Travaille ...
        X