Forum pour réunir les administrateurs de serveur L2
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  

Partagez | 
 

 [Aide]Lier la création d'un compte site sur le serveur

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Vinny



Nombre de messages : 14
Date d'inscription : 27/05/2008

MessageSujet: [Aide]Lier la création d'un compte site sur le serveur   Dim 09 Nov 2008, 00:17

Bonjour à tous,

Ouah sa fait longtemps que je suis pas venu ici, longtemps que j'ai pas toucher à L2 d'ailleurs...

Bon si je suis ici c'est pour demander votre aide, voilà j'utilise un CMS pour la création de mon site, et j'aimerais que lorsqu'un joueur se créer un compte sur le site en question, son compte Lineage II soit créé automatiquement sur le serveur ...

Déjà est-ce possible? Il me semble que oui, j'ai lu sa quelque part mais aucun éclaircissement.

Dans la Mesure du possible une âme charitable serait t'elle m'expliquer? Moi et le PHP sa fait deux, même si je comprend un minimum tout sa dépasse mon entendement ...

Je suppose qu'il y a besoin de la parti register.php du site en question que je joint donc.

Code:
<?php

include_once('../includes/begin.php');
define('TITLE', $LANG['title_register']);
include_once('../includes/header.php');

$cache->load_file('member');
if( !$CONFIG_MEMBER['activ_register'] )
{
   header('location: ' . get_start_page());
   exit;
}

$key = !empty($_GET['key']) ? securit($_GET['key']) : '';
$get_error = !empty($_GET['error']) ? trim($_GET['error']) : '';
$get_erroru = !empty($_GET['erroru']) ? trim($_GET['erroru']) : '';

if( empty($key) )
{
   if( !$session->check_auth($session->data, 0) && !empty($CONFIG_MEMBER['msg_register']) && empty($_POST['confirm']) && empty($get_error) && empty($get_erroru) )
   {
      $template->set_filenames(array(
         'register' => '../templates/' . $CONFIG['theme'] . '/register.tpl'
      ));
      
      $template->assign_block_vars('confirm', array(
      ));
            
      $template->assign_vars(array(
         'MSG_REGISTER' => $CONFIG_MEMBER['msg_register'],
         'L_REGISTER' => $LANG['register'],
         'L_REGISTRATION_TERMS' => $LANG['register_terms'],
         'L_ACCEPT' => $LANG['register_accept'],
         'L_SUBMIT' => $LANG['submit']         
      ));   
      
      $template->pparse('register');
   }
   elseif( $session->check_auth($session->data, 0) !== true && (!empty($_POST['confirm']) || empty($CONFIG_MEMBER['msg_register']) || !empty($get_error) || !empty($get_erroru)) )
   {
      $template->set_filenames(array(
         'register' => '../templates/' . $CONFIG['theme'] . '/register.tpl'
      ));
      
      $template->assign_block_vars('register', array(
      ));
      
      //Gestion des erreurs.
      switch($get_error)
      {
         case 'verif_code':
         $errstr = $LANG['e_incorrect_verif_code'];
         break;
         case 'lenght_mini':
         $errstr = $LANG['pseudo_how'] . ', ' . $LANG['password_how'];
         break;
         case 'pass_same':
         $errstr = $LANG['e_pass_same'];
         break;
         case 'incomplete':
         $errstr = $LANG['e_incomplete'];
         break;
         case 'invalid_mail':
         $errstr = $LANG['e_mail_invalid'];
         break;
         case 'pseudo_auth':
         $errstr = $LANG['e_pseudo_auth'];
         break;
         case 'mail_auth':
         $errstr = $LANG['e_mail_auth'];
         break;
         default:
         $errstr = '';
      }
      if( !empty($errstr) )
         $errorh->error_handler($errstr, E_USER_NOTICE, NO_LINE_ERROR, NO_FILE_ERROR, 'register.'); 

      if( isset($LANG[$get_erroru]) )
         $errorh->error_handler($LANG[$get_erroru], E_USER_WARNING, NO_LINE_ERROR, NO_FILE_ERROR, 'register.'); 
         
      //Mode d'activation du membre.
      if( $CONFIG_MEMBER['activ_mbr'] == '1' )
      {
         $template->assign_block_vars('register.activ_mbr', array(
            'L_ACTIV_MBR' => $LANG['activ_mbr_mail']
         ));
      }
      elseif( $CONFIG_MEMBER['activ_mbr'] == '2' )
      {
         $template->assign_block_vars('register.activ_mbr', array(
            'L_ACTIV_MBR' => $LANG['activ_mbr_admin']
         ));
      }
      
      //Code de vérification, anti-bots.
      if( $CONFIG_MEMBER['verif_code'] == '1' && @extension_loaded('gd') )
      {
         $template->assign_vars(array(
            'L_REQUIRE_VERIF_CODE' => 'if(document.getElementById(\'verif_code\').value == "") {
               alert("' . $LANG['require_verif_code'] . '");
               return false;
             }'
         ));
         
         $template->assign_block_vars('register.verif_code', array(
         ));
      }
      
      //Autorisation d'uploader un avatar sur le serveur.
      if( $CONFIG_MEMBER['activ_up_avatar'] == 1 )
      {
         $template->assign_block_vars('register.upload_avatar', array(
            'WEIGHT_MAX' => $CONFIG_MEMBER['weight_max'],
            'HEIGHT_MAX' => $CONFIG_MEMBER['height_max'],
            'WIDTH_MAX' => $CONFIG_MEMBER['width_max']
         ));
      }      
      
      //Gestion langue par défaut.
      $array_identifier = '';
      $lang_identifier = '../images/stats/other.png';
      $result = $sql->query_while("SELECT lang
      FROM ".PREFIX."lang
      WHERE activ = 1 AND secure = -1", __LINE__, __FILE__);
      while( $row = $sql->sql_fetch_assoc($result) )
      {   
         $lang_info = @parse_ini_file('../lang/' . $row['lang'] . '/config.ini');
         if( $lang_info )
         {
            $lang_name = !empty($lang_info['name']) ? $lang_info['name'] : $row['lang'];
            $array_identifier .= 'array_identifier[\'' . $row['lang'] . '\'] = \'' . $lang_info['identifier'] . '\';' . "\n";
            $selected = '';
            if( $row['lang'] == $CONFIG['lang'] )
            {
               $selected = 'selected="selected"';
               $lang_identifier = '../images/stats/countries/' . $lang_info['identifier'] . '.png';
            }         
            $template->assign_block_vars('register.select', array(
               'LANG' => '<option value="' . $row['lang'] . '" ' . $selected . '>' . $lang_name . '</option>'
            ));
         }
      }
      $sql->close($result);
      
      $template->assign_vars(array(
         'JS_LANG_IDENTIFIER' => $array_identifier,
         'IMG_LANG_IDENTIFIER' => $lang_identifier,
         'L_REQUIRE_MAIL' => $LANG['require_mail'],
         'L_REQUIRE_PSEUDO' => $LANG['require_pseudo'],
         'L_REQUIRE_PASSWORD' => $LANG['require_password'],
         'L_REGISTER' => $LANG['register'],
         'L_REQUIRE' => $LANG['require'],
         'L_MAIL' => $LANG['mail'],
         'L_VALID' => $LANG['valid'],
         'L_PSEUDO' => $LANG['pseudo'],
         'L_PSEUDO_HOW' => $LANG['pseudo_how'],
         'L_PASSWORD' => $LANG['password'],
         'L_PASSWORD_HOW' => $LANG['password_how'],
         'L_CONFIRM_PASSWORD' => $LANG['confirm_pass'],
         'L_VERIF_CODE' => $LANG['verif_code'],
         'L_VERIF_CODE_EXPLAIN' => $LANG['verif_code_explain'],
         'L_LANG_CHOOSE' => $LANG['choose_lang'],
         'L_THEME_CHOOSE' => $LANG['choose_theme'],
         'L_HIDE_MAIL' => $LANG['hide_mail'],
         'L_HIDE_MAIL_WHO' => $LANG['hide_mail_who'],
         'L_INFO' => $LANG['info'],
         'L_WEB_SITE' => $LANG['web_site'],
         'L_LOCALISATION' => $LANG['localisation'],      
         'L_JOB' => $LANG['job'],
         'L_HOBBIES' => $LANG['hobbies'],
         'L_SEX' => $LANG['sex'],
         'L_MALE' => $LANG['male'],
         'L_FEMALE' => $LANG['female'],
         'L_DATE_OF_BIRTH' => $LANG['date_of_birth'],
         'L_DATE_FORMAT' => $LANG['date_birth_format'],
         'L_SIGN' => $LANG['sign'],
         'L_SIGN_WHERE' => $LANG['sign_where'],
         'L_CONTACT' => $LANG['contact'],
         'L_AVATAR_MANAGEMENT' => $LANG['avatar_gestion'],
         'L_AVATAR_LINK' => $LANG['avatar_link'],
         'L_AVATAR_LINK_WHERE' => $LANG['avatar_link_where'],
         'L_WEIGHT_MAX' => $LANG['weight_max'],
         'L_UPLOAD_AVATAR' => $LANG['upload_avatar'],
         'L_UPLOAD_AVATAR_WHERE' => $LANG['upload_avatar_where'],
         'L_SUBMIT' => $LANG['submit'],      
         'L_PREVIOUS_PASS' => $LANG['previous_pass'],
         'L_EDIT_JUST_IF_MODIF' => $LANG['edit_if_modif'],
         'L_NEW_PASS' => $LANG['new_pass'],
         'L_CONFIRM_PASS' => $LANG['confirm_pass'],
         'L_LANG_CHOOSE' => $LANG['choose_lang'],
         'L_HIDE_MAIL' => $LANG['hide_mail'],
         'L_HIDE_MAIL_WHO' => $LANG['hide_mail_who'],
         'L_INFO' => $LANG['info'],
         'L_SITE_WEB' => $LANG['web_site'],
         'L_LOCALISATION' => $LANG['localisation'],
         'L_HEIGHT_MAX' => $LANG['height_max'],
         'L_WIDTH_MAX' => $LANG['width_max']
      ));      
         
      
      //Gestion thème par défaut.
      if( $CONFIG_MEMBER['force_theme'] == 0 ) //Thèmes aux membres autorisés.
      {
         $result = $sql->query_while("SELECT theme
         FROM ".PREFIX."themes
         WHERE activ = 1 AND secure = -1", __LINE__, __FILE__);
         while( $row = $sql->sql_fetch_assoc($result) )
         {   
            $theme_info = @parse_ini_file('../templates/' . $row['theme'] . '/config/' . $CONFIG['lang'] . '/config.ini');
            if( $theme_info )
            {
               $theme_name = !empty($theme_info['name']) ? $theme_info['name'] : $row['theme'];
               $selected = ($row['theme'] == $CONFIG['theme']) ? 'selected="selected"' : '';
               $template->assign_block_vars('register.select_theme', array(
                  'THEME' => '<option value="' . $row['theme'] . '" ' . $selected . '>' . $theme_name . '</option>'
               ));
            }
         }
         $sql->close($result);   
      }
      else //Thème par défaut forcé.
      {
         $theme_info = @parse_ini_file('../templates/' . $CONFIG['theme'] . '/config/' . $CONFIG['lang'] . '/config.ini');
         $theme_name = !empty($theme_info['name']) ? $theme_info['name'] : $CONFIG['theme'];
         $template->assign_block_vars('register.select_theme', array(
            'THEME' => '<option value="' . $CONFIG['theme'] . '" selected="selected">' . $theme_name . '</option>'
         ));
      }

      //Champs supplémentaires.
      $extend_field_exist = $sql->query("SELECT COUNT(*) FROM ".PREFIX."member_extend_cat WHERE display = 1", __LINE__, __FILE__);
      if( $extend_field_exist > 0 )
      {
         $template->assign_vars(array(         
            'L_MISCELLANEOUS' => $LANG['miscellaneous']
         ));
         $template->assign_block_vars('register.miscellaneous', array(         
         ));
         $result = $sql->query_while("SELECT exc.name, exc.contents, exc.field, exc.require, exc.field_name, exc.possible_values, exc.default_values
         FROM ".PREFIX."member_extend_cat AS exc
         WHERE exc.display = 1
         ORDER BY exc.class", __LINE__, __FILE__);
         while( $row = $sql->sql_fetch_assoc($result) )
         {   
            // field: 0 => base de données, 1 => text, 2 => textarea, 3 => select, 4 => select multiple, 5=> radio, 6 => checkbox
            $field = '';
            switch($row['field'])
            {
               case 1:
               $field = '<input type="text" size="30" name="' . $row['field_name'] . '" id="' . $row['field_name'] . '" class="text" value="' .  $row['default_values'] . '" />';
               break;
               case 2:
               $field = '<textarea class="post" rows="4" cols="27" name="' . $row['field_name'] . '" id="' . $row['field_name'] . '">' . unparse($row['default_values']) . '</textarea>';
               break;
               case 3:
               $field = '<select name="' . $row['field_name'] . '" id="' . $row['field_name'] . '">';
               $array_values = explode('|', $row['possible_values']);
               $i = 0;
               foreach($array_values as $values)
               {
                  $selected = ($values ==  $row['default_values']) ? 'selected="selected"' : '';
                  $field .= '<option name="' . $row['field_name'] . '_' . $i . '" value="' . $values . '" ' . $selected . '/> ' . ucfirst($values) . '</option>';
                  $i++;
               }
               $field .= '</select>';
               break;
               case 4:
               $field = '<select name="' . $row['field_name'] . '[]" multiple="multiple" id="' . $row['field_name'] . '">';
               $array_values = explode('|', $row['possible_values']);
               $array_default_values = explode('|', $row['default_values']);
               $i = 0;
               foreach($array_values as $values)
               {
                  $selected = in_array($values, $array_default_values) ? 'selected="selected"' : '';
                  $field .= '<option name="' . $row['field_name'] . '_' . $i . '" value="' . $values . '" ' . $selected . '/> ' . ucfirst($values) . '</option>';
                  $i++;
               }
               $field .= '</select>';
               break;
               case 5:
               $array_values = explode('|', $row['possible_values']);
               foreach($array_values as $values)
               {
                  $checked = ($values ==  $row['default_values']) ? 'checked="checked"' : '';
                  $field .= '<input type="radio" name="' . $row['field_name'] . '" id="' . $row['field_name'] . '" value="' . $values . '" ' . $checked . ' /> ' . ucfirst($values) . '<br />';
               }
               break;
               case 6:
               $array_values = explode('|', $row['possible_values']);
               $array_default_values = explode('|', $row['default_values']);
               $i = 0;
               foreach($array_values as $values)
               {
                  $checked = in_array($values, $array_default_values) ? 'checked="checked"' : '';
                  $field .= '<input type="checkbox" name="' . $row['field_name'] . '_' . $i . '" value="' . $values . '" ' . $checked . '/> ' . ucfirst($values) . '<br />';
                  $i++;
               }
               break;
            }            
            
            $template->assign_block_vars('register.miscellaneous.list', array(
               'NAME' => $row['require'] ? '* ' . ucfirst($row['name']) : ucfirst($row['name']),
               'ID' => $row['field_name'],
               'DESC' => !empty($row['contents']) ? ucfirst($row['contents']) : '',
               'FIELD' => $field
            ));
         }
         $sql->close($result);   
      }
      
      $template->pparse('register');
   }
   else
   {
      header('location:' . get_start_page());
      exit;
   }
}
elseif( !empty($key) && $session->check_auth($session->data, 0) !== true ) //Activation du compte membre
{
   $template->set_filenames(array(
      'register' => '../templates/' . $CONFIG['theme'] . '/register.tpl'
   ));
   
   $template->assign_block_vars('activ', array(
   ));   
   
   $check_mbr = $sql->query("SELECT COUNT(*) as compt FROM ".PREFIX."member WHERE activ_pass = '" . $key . "'", __LINE__, __FILE__);
   if( $check_mbr == '1' ) //Activation du compte.
   {
      $sql->query_inject("UPDATE ".PREFIX."member SET user_aprob = 1, activ_pass = '' WHERE activ_pass = '" . $key . "'", __LINE__, __FILE__);
      
      $template->assign_vars(array(
         'L_REGISTER' => $LANG['register'],
         'L_ACTIVATION_REPORT' => $LANG['activ_mbr_mail_success']
      ));   
   }
   else
   {
      $template->assign_vars(array(
         'L_REGISTER' => $LANG['register'],
         'L_ACTIVATION_REPORT' => $LANG['activ_mbr_mail_error']
      ));   
   }
   
   $template->pparse('register');
}
else
{
   header('Location: ' . get_start_page());
   exit;
}

include('../includes/footer.php');

?>

Je ne sais pas trop si sa sera utile, mais si on peut m'éclairer sur les démarches se serais sympa.

Dans la mesure ou se serait impossible, ou puis je trouver un tel script?j'ai chercher partout sur le net, ainsi qu'un collègue et rien a faire...

Merci a tout ceux qui se pencheront sur le sujet.

Cordialement Skyler
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Hizin



Nombre de messages : 501
Age : 27
Localisation : Le Mans, Sarthe
Date d'inscription : 08/04/2007

MessageSujet: Re: [Aide]Lier la création d'un compte site sur le serveur   Dim 09 Nov 2008, 01:43

Il 'suffit' de rajouter un bout de code connectant a la DB, et créant le compte avec les mêmes identifiants dans la table accounts, en remplissant les autres champs par défaut.

Je ne peux pas t'aider plus, je commence le php de mon coté Wink
Par contre, ce n'est pas réellement sorcier a faire.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Vinny



Nombre de messages : 14
Date d'inscription : 27/05/2008

MessageSujet: Re: [Aide]Lier la création d'un compte site sur le serveur   Dim 09 Nov 2008, 11:21

Je suis très noob dans le Php et malheureusement ... y'a pas de baguette magique, quelqu'un aurait une idée plus précise? Je continu à chercher mais en vain hélas Rolling Eyes
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Vinny



Nombre de messages : 14
Date d'inscription : 27/05/2008

MessageSujet: Re: [Aide]Lier la création d'un compte site sur le serveur   Jeu 13 Nov 2008, 00:20

un petit up s'il vous plait, merci.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yoco



Nombre de messages : 549
Age : 33
Localisation : Près du bonheur, celui d'un rêve...
Date d'inscription : 09/03/2007

MessageSujet: Re: [Aide]Lier la création d'un compte site sur le serveur   Jeu 13 Nov 2008, 00:40

Salutation,

Citation :
Dans la mesure ou se serait impossible, ou puis je trouver un tel script?j'ai chercher partout sur le net, ainsi qu'un collègue et rien a faire...

Bien que cela fait un petit moment que je ne suis pas passé puisque j'étais en vacance xD**, je vais donc te répondre simplement que cela existe, mais que je t'invite à chercher d'avantage. Si vraiment tu n'avances pas de ton côté sur tes recherches, je te donnerai quelques indications. Dans cette attente, je te souhaite bon courage encore.

Amicalement
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Spanky



Nombre de messages : 392
Age : 34
Localisation : Osaka, Japon
Date d'inscription : 01/12/2007

MessageSujet: Re: [Aide]Lier la création d'un compte site sur le serveur   Jeu 13 Nov 2008, 17:02

Yoco a écrit:

Bien que cela fait un petit moment que je ne suis pas passé puisque j'étais en vacance xD**,
Amicalement

tu ma même pas inviter vilain Crying or Very sad

sinon regarde le ucp des diskw sa peut t'aider pour ta recherche
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.lonelyheavens.com
Yoco



Nombre de messages : 549
Age : 33
Localisation : Près du bonheur, celui d'un rêve...
Date d'inscription : 09/03/2007

MessageSujet: Re: [Aide]Lier la création d'un compte site sur le serveur   Jeu 13 Nov 2008, 18:26

Salutation,

Citation :

tu ma même pas inviter vilain

Pourquoi elles me disent toutes ça? T_T snif snif, je suis innocent et tout gentil, puis je vais me faire encore gronder ='(. Désolé pour le "flood". (Ca flood, Yoco est de retour ! xD**)

Amicalement
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: [Aide]Lier la création d'un compte site sur le serveur   Aujourd'hui à 13:10

Revenir en haut Aller en bas
 
[Aide]Lier la création d'un compte site sur le serveur
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Création d'un groupe Tout sur RRTC
» Aide pour la création d'une page d'accueil
» création d'un compte utilisateur deux fois la même adresse mail ????
» Aide avec la création d'un code JavaScript
» Aide à la création d'un tableau simple

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
L2J-FR :: Général :: Aides et Conseils-
Sauter vers: