Fork me on GitHub




(1) 2 3 4 ... 12 »


recuperation des donnée d'enregistrement dans profile utilisateur sous xoops2.32
Supporter Xoops
Inscrit: 17/12/2005 01:41
De Alpes Maritimes
Messages: 1682
Bonjour existe t'il une méthode pour récupérer les info recueilli dans les champs additionnels sur le profil d'utilisateur avancé du type {uname} pour le nom?

j'ai essayer avec une {mon_nouveau_champs} mais cela ne marche pas

Posté le : 09/12/2008 11:40
Partager Twitter Partagez cette article sur GG+
Re: recuperation des donnée d'enregistrement dans profile utilisateur sous xoops2.32
Xoops accro
Inscrit: 20/02/2008 20:27
De Belgium
Messages: 2708
Comme dans l'email de registration?

Posté le : 09/12/2008 12:28

Salutations, Gerard.
PS: Excusez mon mauvais français.
De la bonne manière de poser les questions
Partager Twitter Partagez cette article sur GG+
Re: recuperation des donnée d'enregistrement dans profile utilisateur sous xoops2.32
Semi pro
Inscrit: 05/02/2006 23:34
De Ile-de-France
Messages: 523
Bonjour bendenice,

Certains champs ne sont pas extractables facilement de la BDD.
Il s'agit des champs multicirtères.
Au lieu d'avoir une série de valeurs comme par exemple pour le champ Groupe "1 2" (pour Administrateur & utilisateur enregistré),

ici on a des données de ce type :

a:2:{i:0;s:1:"1";i:1;s:1:"3";}


Il s'agit d'un tableau PHP serialisé.

J'en parle ici

En attendant d'avoir une moulinette qui fasse la convention, la solution que j'ai trouvé pour injecter ou extraire des données dans la base de données c'est de ne pas utiliser ce type de champ...

@+
Z

Posté le : 09/12/2008 17:53
Partager Twitter Partagez cette article sur GG+
Re: recuperation des donnée d'enregistrement dans profile utilisateur sous xoops2.32
Xoops accro
Inscrit: 15/07/2004 11:16
Messages: 4763
Tu veux parler des champs de quelle table ?
Et pour en faire quoi ?
Les faire apparaître dans un thème, un mail, autre ?

Posté le : 09/12/2008 18:38
Partager Twitter Partagez cette article sur GG+
Re: recuperation des donnée d'enregistrement dans profile utilisateur sous xoops2.32
Supporter Xoops
Inscrit: 17/12/2005 01:41
De Alpes Maritimes
Messages: 1682
En fait je veux les rajouter dans yoghurt car du coup les renseignement complémentaire n'y sont pas prit en compte (rajouter les champs ca je c faire en modifiant le template associé a yoghurt mais comment recuperer mes infos?

Posté le : 10/12/2008 19:20
Partager Twitter Partagez cette article sur GG+
Re: recuperation des donnée d'enregistrement dans profile utilisateur sous xoops2.32
Xoops accro
Inscrit: 15/07/2004 11:16
Messages: 4763
Mais les renseignements complémentaires de quoi ?
De quelle table ?
Un table du module 'user profile' fournit avec xoops 2.3.x ?

Donne un exemple concret du champs que tu veux rajouter dans yogurt.

Posté le : 11/12/2008 08:53
Partager Twitter Partagez cette article sur GG+
Re: recuperation des donnée d'enregistrement dans profile utilisateur sous xoops2.32
Supporter Xoops
Inscrit: 17/12/2005 01:41
De Alpes Maritimes
Messages: 1682
Bein je voudrait ajouter plusieurs champs en fait
notamment par exemple la date de naissance
Oui il s'agit bien du module profile livré avec xoops 2.3

Posté le : 11/12/2008 23:33
Partager Twitter Partagez cette article sur GG+
Re: recuperation des donnée d'enregistrement dans profile utilisateur sous xoops2.32
Xoops accro
Inscrit: 15/07/2004 11:16
Messages: 4763
J'ai regardé, mais ça dépasse ce que je sais faire.

Dans le module 'profile', les données semblent être récupérées dans la base avec :
// Dynamic User Profiles
$thisUsergroups $thisUser->getGroups();
$visibility_handler xoops_getmodulehandler('visibility');
$field_ids_visible null;
// Admin has access to all fields
if (!$xoopsUser->isAdmin()) {
    
$field_ids_visible $visibility_handler->getVisibleFields($groups$thisUsergroups);
}

$profile_handler =& xoops_getmodulehandler('profile');
$fields $profile_handler->loadFields();
$cat_handler =& xoops_getmodulehandler('category');
$cat_crit = new CriteriaCompo();
$cat_crit->setSort("cat_weight");
$cats $cat_handler->getObjects($cat_crittruefalse);
unset(
$cat_crit);

$avatar "";
if (
$thisUser->getVar('user_avatar') && "blank.gif" != $thisUser->getVar('user_avatar')) {
    
$avatar XOOPS_UPLOAD_URL "/" $thisUser->getVar('user_avatar');
}

$email "";
if (
$thisUser->getVar('user_viewemail') == 1) {
    
$email $thisUser->getVar('email''E');
} elseif (
is_object($xoopsUser)) {
    
// Module admins will be allowed to see emails
    
if ($xoopsUser->isAdmin() || ($xoopsUser->getVar("uid") == $thisUser->getVar("uid"))) {
        
$email $thisUser->getVar('email''E');
    }
}
foreach (
array_keys($cats) as $i) {
    
$categories[$i] = $cats[$i];
}

$profile_handler xoops_getmodulehandler('profile');
$profile $profile_handler->get($thisUser->getVar('uid'));
// Add dynamic fields
foreach (array_keys($fields) as $i) {
    
//If field is not visible, skip
    
if ($field_ids_visible && !in_array($fields[$i]->getVar('field_id'), $field_ids_visible)) continue;
    
    
$cat_id $fields[$i]->getVar('cat_id');
    
$value $fields[$i]->getOutputValue($thisUser$profile);
    if (
is_array($value)) {
        
$value implode('<br />'array_values($value));
    }
    if (
$value) {
        
$categories[$cat_id]['fields'][$fields[$i]->getVar('field_weight') . "_" $i] = array('title' => $fields[$i]->getVar('field_title'), 'value' => $value);
           
ksort($categories[$cat_id]['fields']);
        
$weights[$cat_id][] = $fields[$i]->getVar('cat_id');
    }
}

//sort fields order in categories
foreach (array_keys($categories) as $i) {
    if (isset(
$categories[$i]['fields'])) {
        
array_multisort($weights[$i], SORT_ASCarray_keys($categories[$i]['fields']), SORT_ASC$categories[$i]['fields']);
    } else {
        unset(
$categories[$i]);
    }
}

//ksort($categories);
$xoopsTpl->assign('categories'$categories);
// Dynamic user profiles end


Si on ajoute un
print_r ($categories);

On retrouve toutes nos données.

Puis elles sont affichées et mises en page dans le template "profile_userinfo.html" avec :
<{foreach item=category from=$categories}>
    <{if isset(
$category.fields)}>
        <
div class="profile-list-category" id="profile-category-<{$category.cat_id}>">
            <
table class="outer" cellpadding="4" cellspacing="1">
                <
tr>
                  <
th colspan="2" align="center"><{$category.cat_title}></th>
                </
tr>
                <{foreach 
item=field from=$category.fields}>
                    <
tr>
                        <
td class="head"><{$field.title}></td>
                        <
td class="even"><{$field.value}></td>
                    </
tr>
                <{/foreach}>
            </
table>
        </
div>
    <{/if}>
<{/foreach}>


Mais ça me semble demander un gros travail pour modifier yogurt, pour qu'il aille récupérer ces données également.
En tout cas là, après quelques recherches, je ne trouve rien de simple à faire.

Si quelqu'un peut t'aider plus que moi...

Posté le : 12/12/2008 09:48
Partager Twitter Partagez cette article sur GG+
Re: recuperation des donnée d'enregistrement dans profile utilisateur sous xoops2.32
Xoops accro
Inscrit: 20/02/2008 20:27
De Belgium
Messages: 2708
Vous avez vu deja ceci?

Posté le : 12/12/2008 13:14

Salutations, Gerard.
PS: Excusez mon mauvais français.
De la bonne manière de poser les questions
Partager Twitter Partagez cette article sur GG+
Re: recuperation des donnée d'enregistrement dans profile utilisateur sous xoops2.32
Xoops accro
Inscrit: 15/07/2004 11:16
Messages: 4763
Ah non je n'avais pas vu ça !
C'est justement ce que j'essayais de faire ce matin, alors je vais ré-essayer, puisque ça semble être une bonne piste !
Merci pour le lien !

Posté le : 12/12/2008 13:53
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant
(1) 2 3 4 ... 12 »



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

231 Personne(s) en ligne (198 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 231 | Plus ...