Reflex a écrit:
Up ?
Si tu as une question à formuler concernant l'usage en commun des tables utilisateurs de PWG et de phpBB, tu dois la formuler dans un forum adapté.
Ici le sujet partait de la [1.5.0RC1]? Aucune Release Candidate ne fait l'objet de support sur le forum.
Pas de Up (?) dans le forum beta test, merci.
Up ?
Salut,
bon j'ai trouvé mon erreur bénine, concernant mon problème d'authentification, ma modification suivante :
// All informations contained in these tables and column are related to // phpwebgallery_users table. $conf['users_table'] = 'phpbb_users'; $conf['user_infos_table'] = 'phpbb_users';
N'est apparement pas possible pour l'instant, plus particulièrement le fait de délocaliser l'accès aux infos de la fonction "personnalisation" liées à la table prefixe_user_infos, donc je suis repassé à ceci :
// All informations contained in these tables and column are related to // phpwebgallery_users table. $conf['users_table'] = 'phpbb_users';
Ensuite, puisque phpBB, utilise des ID utilisateurs pour l'administrateur et l'invité différentes de PWG, il suffit d'inverser l'ID de l'admin fondateur (votre compte) qui est par défaut à 1 par 2 et l'ID du compte de statut "guest" (invité) qui est par défaut à 2 par -1.
@+.
Bonjour,
Moi qui est un site qui tourne avec phpbb derrière et que j'utilise phpwebgallery depuis longtemps.
Je vous encouragent pour cette excellente évolution.
Merci d'avance à vous les pros !!!
Outie a écrit:
I am trying to tie these two databases together as well... Any chance I could get a translation of the post above. Lets bring the islands together not seperate us :) (France and US). Our governments are doing that enought for us.
Outie
Yeh, you will have it asap but right now it isn't working as expected.
Je vais me permettre de répondre rapidement à ces questions (j'espère que je ne trahirais pas l'esprit du projet de la liaison pwg-phpbb).
La liaison entre le forum et la gallerie est une demande qui était de plus en plus présente (moi le premier d'ailleurs :) ). Zorglub a décidé alors de nous faire plaisir et s'est lancé dans le projet (voir ici pour la génèse).
Il avait été décidé dans un premier temps de juste lier la table des utilisateurs avec le strict minimun d'information (nom, mail, mot de passe). Et si cela marche, c'est déjà un bon début.
De plus, après plusieurs discussions, voici la structure choisit pour relier les applications php : chaque application php aurait une table user (avec juste les informations qui seraient communes à toutes les applications) et une table preference qui elle serait propre à chaque application.
Donc dans un premier temps, je pense qu'il faut surtout continuer à travailler et tester juste le lien avec le minimum de variables. Et à mon avis, il faudrait essayer de trouver des solutions qui permettent au minimum de toucher aux tables des différentes applications (à terme les manipulations pour joindre le forum et la gallerie devront être réalisable par une personne avec peu de compétences informatiques).
En revanche, il est à mon avis très intéressant de réfléchir à partir de maintenant sur les informations qui pourraient être communes (d'autant que ce genre de discussion doivent avoir lieu en ce moment chez les développeurs phpbb qui devraient eux aussi sortir une structure de base de donnée basée elle aussi sur la séparation des tables users et preference).
I am trying to tie these two databases together as well... Any chance I could get a translation of the post above. Lets bring the islands together not seperate us :) (France and US). Our governments are doing that enought for us.
Outie
Salut,
je suis en train de voir pour réaliser cela, mais j'avais pas penser aux préférences. En effet, avec votre exemple en personnalisant les champs, il manque ceux du profil :
// All informations contained in these tables and column are related to // phpwebgallery_users table. $conf['users_table'] = $prefixeTable.'users'; // user_fields : mapping between generic field names and table specific // field names. For example, in PWG, the mail address is names // "mail_address" and in punbb, it's called "email". $conf['user_fields'] = array( 'id' => 'id', 'username' => 'username', 'password' => 'password', 'email' => 'mail_address' ); // pass_convert : function to crypt or hash the clear user password to store // it in the database $conf['pass_convert'] = create_function('$s', 'return md5($s);'); // guest_id : id of the anonymous user $conf['guest_id'] = 2; // webmaster_id : webmaster'id. $conf['webmaster_id'] = 1;
On obtient très facilement, la liaison avec les utilisateurs du forum, mais il manque leurs préférences d'affichage, de langue, enfin toute la partie "Personnaliser", bon ca je pense qu'avec quelques ALTER TABLE dans ma table phpbb_users ce sera résolu ;).
Ce qui me m'étonne par contre, c'est qu'ayant lié les utilisateurs de mon forum et plus particulièrement mon compte administrateur, ID 2 sous phpBB et spécifié via ceci :
// webmaster_id : webmaster'id. $conf['webmaster_id'] = 2;
Je me retrouve simple utilisateur, allons bon ! Les permissions seraient elles, tombées à l'eau :? ?
@+.
EDIT : J'ai tenté d'ajouter les informations de la table users_infos dans celle appelée phpbb_users afin d'avoir le profil lié comme il se doit, enfin, que les utilisateurs aient leur profil, en opérant comme ceci :
Contenu du fichier config_local_inc.php :
<?php // this file is provided as an example. It does not modify the configuration // as long as it remains in "tools" directory. Move it to "include" // directory if you want to modify default configuration. $conf['prefix_thumbnail'] = ''; $conf['show_gt'] = true; $conf['debug_l10n'] = true; $conf['gallery_title'] = "xxx"; $conf['gallery_description'] = 'xxx'; $conf['gallery_url'] = 'http://mondomaine/gallery/'; // +-----------------------------------------------------------------------+ // | authentication | // +-----------------------------------------------------------------------+ // apache_authentication : use Apache authentication as reference instead of // users table ? $conf['apache_authentication'] = false; // users_table: which table is the reference for users? Can be a different // table than PhpWebGallery table // // If you decide to use another table than the default one, you need to // prepare your database by deleting some datas : // // delete from phpwebgallery_user_access; // delete from phpwebgallery_user_cache; // delete from phpwebgallery_user_feed; // delete from phpwebgallery_user_group; // delete from phpwebgallery_user_infos; // delete from phpwebgallery_sessions; // delete from phpwebgallery_rate; // update phpwebgallery_images set average_rate = NULL; // delete from phpwebgallery_caddie; // delete from phpwebgallery_favorites; // // All informations contained in these tables and column are related to // phpwebgallery_users table. $conf['users_table'] = 'phpbb_users'; $conf['user_infos_table'] = 'phpbb_users'; // user_fields : mapping between generic field names and table specific // field names. For example, in PWG, the mail address is names // "mail_address" and in punbb, it's called "email". $conf['user_fields'] = array( 'id' => 'user_id', 'username' => 'username', 'password' => 'user_password', 'email' => 'user_email', 'maxheight' = 'maxheight', 'maxwidth' = 'maxwidth', 'nb_image_line' = 'nb_image_line', 'nb_line_page' = 'nb_line_page', 'status' = 'status', 'language' = 'language', 'expand' = 'expand', 'show_nb_comments' = 'show_nb_comments', 'recent_period' = 'recent_period', 'template' = 'template', 'registration_date' = 'registration_date' ); // pass_convert : function to crypt or hash the clear user password to store // it in the database $conf['pass_convert'] = create_function('$s', 'return md5($s);'); // guest_id : id of the anonymous user $conf['guest_id'] = -1; // webmaster_id : webmaster'id. $conf['webmaster_id'] = 2; ?>
Puis les requêtes SQL pour ajouter les champs, dans la table phpbb_users :
ALTER TABLE phpbb_users ADD maxheight SMALLINT(6) DEFAULT NULL; ALTER TABLE phpbb_users ADD nb_image_line TINYINT(1) UNSIGNED NOT NULL DEFAULT '5'; ALTER TABLE phpbb_users ADD nb_line_page TINYINT(3) UNSIGNED NOT NULL DEFAULT '3'; ALTER TABLE phpbb_users ADD status ENUM('admin','guest') NOT NULL DEFAULT 'guest'; ALTER TABLE phpbb_users ADD language VARCHAR(50) NOT NULL DEFAULT 'english'; ALTER TABLE phpbb_users ADD maxwidth SMALLINT(6) DEFAULT NULL; ALTER TABLE phpbb_users ADD expand ENUM('true','false') NOT NULL DEFAULT 'false'; ALTER TABLE phpbb_users ADD show_nb_comments ENUM('true','false') NOT NULL DEFAULT 'false'; ALTER TABLE phpbb_users ADD recent_period TINYINT(3) UNSIGNED NOT NULL DEFAULT '7'; ALTER TABLE phpbb_users ADD template VARCHAR(255) NOT NULL DEFAULT 'yoga'; ALTER TABLE phpbb_users ADD registration_date DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00'; UPDATE `phpbb_users` SET `maxheight` = '600'; UPDATE `phpbb_users` SET `maxwidth` = '800'; UPDATE `phpbb_users` SET `nb_image_line` = '2'; UPDATE `phpbb_users` SET `nb_line_page` = '4'; UPDATE `phpbb_users` SET `status` = 'guest'; UPDATE `phpbb_users` SET `language` = 'fr_FR.iso-8859-1'; UPDATE `phpbb_users` SET `expand` = 'false'; UPDATE `phpbb_users` SET `show_nb_comments` = 'true'; UPDATE `phpbb_users` SET `recent_period` = '15'; UPDATE `phpbb_users` SET `template` = 'yoga'; UPDATE `phpbb_users` SET `registration_date` = '2005-22-09 15:46:00';
ET ça fonctionne pas :/ Mince alors, aurais-je omis d'ajouter une déclaration quelque part peut-etre :P ?
@+.