12 Posts
Hypogees
11 years ago
Topic

Bonjour,

 

Mon site, réalisé avec Seblod 3.15, permet aux utilisateurs de proposer des itinéraires de randonnées à ski ainsi que de faire des rapports de sortie sur ces itinéraires.

 

Un formulaire permet de créer un nouvel itinéraire dont les données sont stockées sous le tableau #__cck_store_form_itineraires avec différentes informations telle que le nom (itineraire_nom), le lieu, l’attitude de départ et d’arrivée. Le lieu est choisi grâce à une liste de sélection dynamique en cascade qui permet de choisir le pays, la région et finalement le département.

 

Un second formulaire permet d’ajouter un rapport de sortie qui est stocké sous le tableau #__cck_store_form_rapports avec différentes informations telle que les participants, la date de sortie, les conditions météo et de neige. Ce rapport de sortie se base sur un itinéraire déjà connu et utilise une liste de sélection dynamique pour le sélectionner. Voici la construction de ce dernier champ :

 

Intitulé : Itinéraire

Requête : Construction

Tableau : #__cck_store_form_itineraires

Nom des options : itineraire_nom

Valeur des options : id_itineraire

Trié par : itineraire_nom (Croissant)

 

Une fois le rapport publié, les utilisateurs peuvent cliquer sur le nom de l’itinéraire et sont renvoyés automatiquement sur la page de description de celui-ci. Jusqu’ici tout va bien !

 

Actuellement seul id_itineraire est stocké sous le tableau #__cck_store_form_rapports. Je ne peux donc pas afficher directement dans mon rapport de sortie le pays, la région ou le département. Je ne peux pas non plus générer un titre automatique (avec le champ "SD Concat") à mes rapports de sortie comprenant le nom de l’itinéraire et la date, puisque ces éléments ne sont pas stockés dans le tableau (#__cck_store_form_rapports).

 

Je souhaiterai donc que dans le tableau #__cck_store_form_rapports figurent les éléments suivants :

 

id_itineraire, itineraire_nom, id_pays, id_region, id_departement (tous à récupérer dans le tableau #__cck_store_form_itineraires lors de la sélection dynamique).

 

Est-ce possible de le faire avec une requête en libre ? Si oui quelle est cette requête ?

 

Merci d’avance,

 

Sylvain


Get a Book for SEBLOD
11 years ago
1
Level 1

Bonjour,

Tu devrais jeter un coup d'oeil du côté du plugin de typo 'SD Databaser' dans le Seblod Market : http://www.seblod.com/products/2239

Ce plugin te permet d'exécuter une requête SQL basée ou non sur la valeur du champ concerné par la typo.

Dans ton cas, tu peux créer des champs pour tes rapports uniquement sur la partie frontend dont le stockage est '#__cck_store_form_rapports / id_itineraire' et dnas la typo, tu suis le didacticiel du SD Databaser qui te retourne la valeur de la colonne voulue stockée dans ta table '#__cck_store_form_itineraires' :

SELECT macolonne FROM #__cck_store_form_itineraires WHERE id = *value*;

Tu peux aussi apparemment retourner plusieurs colonnes directement dans un même champ séparées par un caractère perso.

Cette solution t'évite de dupliquer les informations de tes itinéraires dans la table rapport ce qui est fortement déconseillé.

Olivier

12 Posts
Hypogees
11 years ago
0
Level 2

Oui effectivement, dupliquer les informations est une mauvaise idée en cas de modifications de celles-ci. Je vais suivre ton conseil et tester SD Databaser.

Sylvain

Get a Book for SEBLOD