Se connecter / S'enregistrer
Votre question

Intégrer une fonction php à une page de phpbb ...

Tags :
  • Php
  • Programmation
Dernière réponse : dans Programmation
4 Mai 2007 12:22:04

Bonjour tout le monde,

Je suis en train de bosser sur un truc pour faire en sorte que les membres de mon forum phpbb soient automatiquement inscrit avec le même pseudo dans mon cms joomla.
J'ai déjà utilisé un bridge porur faire quelques modifs.
Je voudrais maintenant ajouter ce code :

  1. <?php
  2. //written by Guessous Mehdi <a href="http://www.mehdiplugins.com/misc" rel="nofollow" target="_blank">http://www.mehdiplugins.com/misc</a>
  3. // Released under GNU/GPL License : <a href="http://www.gnu.org/copyleft/gpl.html" rel="nofollow" target="_blank">http://www.gnu.org/copyleft/gpl.html</a>
  4.  
  5. /*
  6. script for merging phpbb users with those of joomla
  7. */
  8.  
  9. $myTable= "phpbb_users";
  10.  
  11.  
  12. //-------------------------------------------------
  13. define( '_VALID_MOS', 1 );
  14. error_reporting(E_ALL ^ E_NOTICE);
  15. define( 'RG_EMULATION', 1 );
  16. include_once( 'globals.php' );
  17. require_once( 'configuration.php' );
  18. if ($mosConfig_offline == 1) exit();
  19. require_once( 'includes/joomla.php' );
  20. $mainframe = new mosMainFrame( $database, '', '.' );
  21. $mainframe->initSession();
  22.  
  23. // loads english language file by default
  24. if ($mosConfig_lang=='') {
  25. $mosConfig_lang = 'english';
  26. }
  27. include_once( $mosConfig_absolute_path .'/language/' . $mosConfig_lang . '.php' );
  28.  
  29. $my = $mainframe->getUser();
  30.  
  31. function quicksave( $myUser ) { //$myUser = Array(name, username, email ,password)
  32. global $database, $acl;
  33. global $encryptedPasswords;
  34.  
  35. $row = new mosUser( $database );
  36.  
  37. $row->name = $myUser["name"];
  38. $row->username = $myUser["username"];
  39. $row->email = $myUser["email"];
  40.  
  41. mosMakeHtmlSafe($row);
  42.  
  43. $row->id = 0;
  44. $row->usertype = '';
  45. $row->gid = $acl->get_group_id( 'Registered', 'ARO' );
  46.  
  47. if (!$row->check()) return html_entity_decode($row->getError());
  48.  
  49. $pwd = $myUser["password"];
  50.  
  51. $row->password = $pwd; //already encrypted
  52.  
  53. $row->registerDate = date('Y-m-d H:i:s');
  54.  
  55. if (!$row->store()) return html_entity_decode($row->getError());
  56. $row->checkin();
  57.  
  58. return "ok";
  59. }//end function quicksave
  60.  
  61. $sql ="SELECT username, user_password as password, user_email as email FROM ". $myTable . " WHERE user_active=1 ;";
  62. $database->setQuery($sql);
  63. $rows = $database->loadAssocList();
  64.  
  65. if(count($rows)==0){
  66. echo "Unable to find any user in the table \"$myTable\" .<br />";
  67. echo "Is the table name correct, or present in your Joomla database ?<br />";
  68. exit();
  69. }
  70.  
  71.  
  72. $userfailed=$usersucceeded="";
  73.  
  74. foreach ($rows as $row) {
  75. $row['name'] = $row['username']; //set name the same as usermame
  76.  
  77. $error=quicksave($row);
  78. if($error == "ok" ) $usersucceeded .= '<tr><td colspan="2" >' . $row['username'] . '</td></tr>';
  79. else $userfailed .= '<tr><td>'. $row['name']. '</td><td>'. $error. '</td></tr>' ;
  80. }
  81. ?>


si possible sur la page de redirection de phpbb qui s'affiche après l'inscription du membre.
(ce script permet après inscription d'ajouter le membre dans la base joomla.)

PS : pour l'instant ce script prend encore en compte les membres déjà inscrits. Sauriez-vou aussi par hasard comment éviter de les prendre en compte ?

Merci !

Autres pages sur : integrer fonction php page phpbb

4 Mai 2007 15:00:51

personne n'a de petite idée ?
4 Mai 2007 18:46:43

allez quoi ça doit pas être si compliqué ...
Contenus similaires
5 Mai 2007 01:49:10

Tout se passe dans ton fichier profile.php :) 
5 Mai 2007 10:39:11

merci ! je vais me porter là dessus
5 Mai 2007 15:34:44

dis moi ce que ca devient ;) 
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS