IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Affichage profil traducteur en fonction critères sélectionnés


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Webdesigner
    Inscrit en
    Octobre 2010
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2010
    Messages : 68
    Points : 29
    Points
    29
    Par défaut Affichage profil traducteur en fonction critères sélectionnés
    Bonjour à tous,

    J'ai un souci technique et je ne sais pas comment le programmer. Peut-être en PHP ?
    Je souhaite afficher un profil (par exemple d'un traducteur) en fonction des critères de choix.

    J'ai un menu déroulant avec la "langue source" ET un menu déroulant avec la "langue cible".
    Si "langue source = anglais" + "langue cible = allemand", j'affiche le profil numéro 100
    Si "langue source = espagnol" + "langue cible = allemand", j'affiche le profil numéro 101, etc.

    Savez-vous comment je pourrais programmer cela?
    Merci par avance
    Novice100

  2. #2
    Membre émérite Avatar de HiRoN
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    2 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2007
    Messages : 2 035
    Points : 2 589
    Points
    2 589
    Par défaut
    Bonsoir,

    Via un combo de switch ?

    Si dans un traitement, dans l'idée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    $profil = 0;
    switch($source) {
    	case 'anglais':
    		switch($cible) {
    			case 'allemand': $profil = 100; break;
    			case '...': $profil = '...'; break;
    			default: $profil = '...'; break;
    		}
    		break;
    	case 'espagnol':
    		switch($cible) {
    			case 'allemand': $profil = 101; break;
    			case '...': $profil = '...'; break;
    			default: $profil = '...'; break;
    		}	
    		break;
    	case  '...': 
    		switch($cible) {
    			case '...': $profil = '...'; break;
    			case '...': $profil = '...'; break;
    			default: $profil = '...'; break;
    		}	
    		break;
    	default: 
    		switch($cible) {
    			case '...': $profil = '...'; break;
    			case '...': $profil = '...'; break;
    			default: $profil = '...'; break;
    		}		
    		break;
    }
    À adapter en fonction de ton besoin.
    Il doit également y avoir mieux à faire, mais sans plus d'infos...
    Pensez à utiliser les ressources disponibles en Dev. Web :
    (x)HTML : Cours (X)HTML / FAQ (X)HTML
    CSS : Cours CSS / FAQ CSS / Galerie CSS
    Javascript : Cours / FAQ / Sources
    Mon site : Développeur Web Freelance

  3. #3
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 235
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 235
    Points : 15 532
    Points
    15 532
    Par défaut
    la 1re étape serait déjà d'avoir une base de données avec une liste de traducteurs. avez-vous déjà ça ?

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Webdesigner
    Inscrit en
    Octobre 2010
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2010
    Messages : 68
    Points : 29
    Points
    29
    Par défaut
    Oui, j'ai une base de données avec des traducteurs.
    L'idée est que les traducteurs s'inscrivent en remplissant un profil.

    Lors que les clients recherchent un traducteur (exemple traduit anglais vers allemand), ils utilisent 2 menus déroulants et on affiche le ou les traducteurs (cela peut être 50 ou plus) qui correspondent à la recherche.

    J'ai pas mal de langue (environ 100), donc cela fait pas mal de possibilités pour faire un SWITCH, non ?

  5. #5
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    On pourrait voir la structure de ta base ? Tu as une table traducteur avec une liaison vers une table de langues peut-être ? Dans ce cas, c'est une recherche en base qu'il faut que tu fasses : rechercher tous les traducteurs qui ont les deux langues recherchées.
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Citation Envoyé par novice100 Voir le message
    ...J'ai pas mal de langue (environ 100)...
    On peut très bien créer une table SQL "t_langue_profil", contenant les colonnes :
    • id
    • langue_source
    • langue_cible
    • profil

    Connaissant $langue_source et $langue_cible, il suffit d'une simple requête SQL pour trouver le profil correspondant.

    N.B. Il est préférable d'avoir les langues sous leur forme conventionnelle "fr", "en", de",... plutôt que "français", "anglais", "allemand" (qui sont des traductions françaises !)

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Webdesigner
    Inscrit en
    Octobre 2010
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2010
    Messages : 68
    Points : 29
    Points
    29
    Par défaut
    Oui, j'ai une base de ce type, avec possibilité d'avoir plusieurs langues sources et cibles si le traducteur en a besoin.
    Je souhaite programmer le site avec Wordpress, est-ce que c'est une contrainte ou bien pensez-vous que je puisse insérer facilement un code comme celui-ci pour afficher le profil ?

  8. #8
    Membre émérite Avatar de HiRoN
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    2 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2007
    Messages : 2 035
    Points : 2 589
    Points
    2 589
    Par défaut
    J'ai pas mal de langue (environ 100), donc cela fait pas mal de possibilités pour faire un SWITCH, non ?
    Dans ce cas, l'idée du switch n'est clairement pas approprié... (mais tu n'avais pas précisé le nombre)
    @Jreaux a tout dit !
    Pensez à utiliser les ressources disponibles en Dev. Web :
    (x)HTML : Cours (X)HTML / FAQ (X)HTML
    CSS : Cours CSS / FAQ CSS / Galerie CSS
    Javascript : Cours / FAQ / Sources
    Mon site : Développeur Web Freelance

  9. #9
    Nouveau membre du Club
    Homme Profil pro
    Webdesigner
    Inscrit en
    Octobre 2010
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2010
    Messages : 68
    Points : 29
    Points
    29
    Par défaut
    En fait, mon souci est comment je fais pour qu'à partir de mes 2 menus déroulants, je puisse sélectionner les profils qui correspondent à ma recherche.
    Par exemple, un traducteur traduisant de l'anglais (source language) vers l'allemand (target language).
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <table>
    <tr>
    <td>Source Language:</td>
    <option value="" selected> Any Language </option>
    <option value="chinese" >Chinese</option>
    <option value="croatian" >Croatian</option>
    <option value="czech" >Czech</option>
    <option value="danish" >Danish</option>
    <option value="english" >English</option>
    <option value="french" >French</option>
    <option value="german" >German</option>
    </select>
    </tr>
    </table>


    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <table>
    <tr>
    <td>Target Language:</td>
    <option value="" selected> Any Language </option>
    <option value="chinese" >Chinese</option>
    <option value="croatian" >Croatian</option>
    <option value="czech" >Czech</option>
    <option value="danish" >Danish</option>
    <option value="english" >English</option>
    <option value="french" >French</option>
    <option value="german" >German</option>
    </select>
    </tr>
    </table>

  10. #10
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Logiquement un traducteur n'est pas unidirectionnel (je suppose que ton traducteur est une personne hein, pas une application informatique )
    Si le traducteur M parle français, anglais et allemand, il peut traduire du français à l'allemand comme de l'allemand au français.
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  11. #11
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    1-
    Citation Envoyé par novice100 Voir le message
    ...L'idée est que les traducteurs s'inscrivent en remplissant un profil.
    ...on affiche le ou les traducteurs (cela peut être 50 ou plus) qui correspondent à la recherche...
    Dans ce cas, le résultat n'est pas "100" ou "101" ou "..." : il peut y avoir PLUSIEURS résultats à la recherche !

    2-
    Citation Envoyé par novice100 Voir le message
    Oui, j'ai une base de données avec des traducteurs.
    MONTRE la STRUCTURE de cette table

    3-
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <table>
    <tr>
    <td>Source Language:</td>
    <option .....
    Il faut utiliser une balise <select>.

    4- Pour afficher un "profil" à partir des 2 listes déroulantes (<select>), 2 solutions :

    Solution 1 : PHP

    • mettre ces 2 <select> dans un <form>
    • ajouter un <input type="submit">
    • puis traiter et afficher le résultat * en PHP (récupération des 2 valeurs -> requete -> ...)

    Solution 2 : JavaScript/Ajax (SANS rechargement de la page)

    • ajouter un onchange="..." sur les 2 <select>
    • récupérer, dans un script JS, les 2 valeurs
    • faire un appel Ajax vers une page PHP qui traitera les données et renverra le résultat * au script JS

    * "le résultat" peut être sous la forme d'un tableau <table>, avec sur chaque ligne :
    • un traducteur et son profil
    • + un bouton "sélectionner ce traducteur"


    N.B. Dans un premier temps, la Solution 1 est bien suffisante pour ton besoin (et ton niveau de connaissance).
    J'ai mis un lien : CLIQUE DESSUS !
    Dernière modification par Invité ; 21/11/2019 à 10h35.

Discussions similaires

  1. [XL-2010] Comment masquer des lignes en fonction de critères sélectionnés dans un menu déroulant
    Par Curious 8 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 30/10/2015, 13h07
  2. Réponses: 1
    Dernier message: 24/06/2013, 14h40
  3. Réponses: 2
    Dernier message: 04/09/2006, 16h58
  4. compréhension du profil d'une fonction
    Par lor dans le forum MFC
    Réponses: 7
    Dernier message: 08/01/2004, 12h59
  5. Affichage périodique d'une fonction
    Par boobob dans le forum C
    Réponses: 16
    Dernier message: 08/12/2003, 16h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo