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 :

Valeur select option


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2016
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2016
    Messages : 112
    Par défaut Valeur select option
    Bonjour,
    J'ai un soucis avec mes options de la balise <select>.
    En effet je cherche à implémenter une option de choix multiples de traduction en langues sur mon site (Français, Anglais, Espagnol...), dans la partie entête de telle sorte que les visiteurs puissent choisir leur langue de choix pour visiter mon site.
    De ce fait, je veux que si l'utilisateur clique sur "Anglais", il y ait une redirection vers le site en anglais à travers un lien que j'ai mis en <a href="#"></a> pour l'instant en attendant que vous me montrez la bonne manière.
    Ci-dessous le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <select>
    	<option><a href="français/index.php">Français</a></option>
    	<a href="anglais/index.php"><option>Anglais</option></a>
    </select>
    Veuillez me donner le bon chemin svp. Je vous remercie.

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

    "site multilingue script php"

  3. #3
    Membre chevronné Avatar de ma5t3r
    Homme Profil pro
    Développeur freelance
    Inscrit en
    Mai 2015
    Messages
    320
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2015
    Messages : 320
    Par défaut
    Salut
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <select onchange="this.options[this.selectedIndex].value && (window.location = this.options[this.selectedIndex].value);">
        <option value="">Sélectionnez une langue</option>
        <option value="http://...anglais/index.php">Anglais</option>
        <option value="http://...polonais/index.php">Polonais</option>
        <option value="http://...chinois/index.php">Chinois</option>
        <option value="http://...turc/index.php">Turc</option>
    </select>

  4. #4
    Invité
    Invité(e)
    Par défaut
    Le principe est (relativement) simple :


  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2016
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2016
    Messages : 112
    Par défaut
    Bonjour ma5t3r
    J'ai utilisé ton code mais ça me crée un peu de beug. Lorsque je change de langue pour aller en anglais par exemple et que je veux changer encore pour revenir en français, il crée une erreur de redirection.
    Voilà comment j'ai rangé mes fichiers et dossiers:
    1- A la racine du site, j'ai les fichiers du site en français,
    2- j'ai créé un dossier du site en anglais appelé "anglais" et j'ai rangé tous les documents en anglais dedans et aussi un dossier de site allemand appelé "allemand".
    3- j'ai encore créé un autre dossier de site en français appelé "francais" dans lequel j'ai encore mis les fichiers du site en français de telle sorte que la redirection tombe dessus si je veux quitter l'anglais pour revenir en français.
    Ci-dessous le code du header.php en francais.
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        <p class="btn py-2 px-3 btn-primary d-flex align-items-center justify-content-center">
    		<option value="">Langue</option>
    			<select onchange="this.options[this.selectedIndex].value && (window.location = this.options[this.selectedIndex].value);">
                                    <option value="http://localhost/ENTREPRISE-WAWA/index.php">Français</option>
    				<option value="http://localhost/ENTREPRISE-WAWA/anglais/index.php">Anglais</option>
                                    <option value="http://localhost/ENTREPRISE-WAWA/allemand/index.php">Deutsch</option>				
    			</select>
    	</p>

    Ci-dessous le code du header.php en anglais.
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        <p class="btn py-2 px-3 btn-primary d-flex align-items-center justify-content-center">
    	  <option value="">Language</option>
    		<select onchange="this.options[this.selectedIndex].value && (window.location = this.options[this.selectedIndex].value);">
    			<option value="http://localhost/ENTREPRISE-WAWA/anglais/index.html">English</option>
    			<option value="http://localhost/ENTREPRISE-WAWA/francais/index.php">French</option>
    			<option value="http://localhost/ENTREPRISE-WAWA/allemand/index.php">Deutsch</option>
    		</select>
        </p>
    Encore merci pour l'aide que tu m'apporteras à nouveau pour la résolution de mon problème.

  6. #6
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2016
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2016
    Messages : 112
    Par défaut
    Bonjour jreaux62,
    Je te remercie pour ta réponse et pour le lien du cours. Cependant en suivant le cours il ya des choses qui manquent dans le contenu, c'est la partie de redirection vers le site dans la langue souhaitée.
    Je n'ai pas vu la partie dans laquelle l'utilisateur est redirigé vers le site en une autre langue. Merci de m'aider à le faire.
    Ci-dessous le code complet de la partie header du site.

    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
     
    <?php if( empty(session_id()) ){ session_start(); }	// ouverture de SESSION (important)
    // -------------------------
    // 1- On commence par définir toutes les Langues du site	
    define('LANG_ARRAY', ['fr','en','es']); // ICI, on peut ajouter FACILEMENT d autres langues
    // Traductions
    $LANG_nom = [
    	'fr' => ['Français','Anglais','Espagnol'],
    	'en' => ['French', 'English', 'Spanish'],
    	'es' => ['Francés', 'Inglés', 'Español'],
    	];
    // -------------------------
    // 2- Récupération de la langue
    // La langue choisie sera enregistrée dans une variable de SESSION, afin d'être disponible partout dans le site.
    if( empty($_SESSION['LANG']) )
    {
    	$_SESSION['LANG'] = LANG_ARRAY[0]; // langue par défaut (ici : 'fr')
    }
     
    // ------------
    if( !empty($_POST['lang']) && in_array($_POST['lang'], LANG_ARRAY) )
    {
    	$_SESSION['LANG'] = $_POST['lang'];
    }
    // -------------------------
    header('Content-type:text/html; charset=UTF-8');	// encodage UTF-8
    error_reporting(E_ALL); 	// en TEST !!
    // -------------------------
    ?>    
    	<div class="bg-top navbar-light d-flex flex-column-reverse">
        	        <div class="container py-3">
        		        <div class="row no-gutters d-flex align-items-center align-items-stretch">
        			        <div class="col-md-4 d-flex align-items-center py-4">
        				        <a class="navbar-brand" href="index.html">Entreprise <span>Activité</span></a>
        			        </div>
    	    		            <div class="col-lg-8 d-block">
    		    		            <div class="row d-flex">
    					                <div class="col-md d-flex topper align-items-center align-items-stretch py-md-4">
    					    	            <div class="icon d-flex justify-content-center align-items-center"><span class="ion-ios-paper-plane"></span></div>
    										<div class="text">
    											<span>Email</span>
    											<span>info@xxxxxxxxxxxxxxxxxxx.com <!-- / fonetik.consulting@gmail.com --></span>
    										</div>
    									</div>
    									<div class="col-md d-flex topper align-items-center align-items-stretch py-md-4">
    										<div class="icon d-flex justify-content-center align-items-center"><span class="ion-ios-call"></span></div>
    										<div class="text">
    											<span>Contact</span>
    											<span>+xxx xx xx xx xx </span>
    										</div>
    									</div>
    					    <div class="col-md d-flex topper align-items-center align-items-stretch py-md-4">
    					    	<div class="icon d-flex justify-content-center align-items-center"><span class="ion-ios-time"></span></div>
    						    <div class="text">
    						    	<span>Heures d'ouvertures</span>
    						    	<span>Lundi - Samedi 8H - 17H</span>
    						    </div>
    					    </div>
    				    </div>
    			    </div>
    		    </div>
    		  </div>
    		  <div class="top-social-menu py-2 bg-light">
    		  	<div class="container">
    		  		<div class="row">
    			    	<div class="col">
    			    		<p class="social mb-0">
    			    			<a href="#"><i class="ion-logo-facebook"></i><span class="sr-only">Facebook</span></a>
    			    			<a href="#"><i class="ion-logo-twitter"></i><span class="sr-only">Twitter</span></a>
    			    			<a href="#"><i class="ion-logo-googleplus"></i><span class="sr-only">Googleplus</span></a>
    			    		</p>
    			    	</div>
    			    	<div class="col text-right">
     
    							<form method="post" action="">
    								<select name="lang" onchange="submit();">
    									<?php
    										foreach(LANG_ARRAY as $idx => $lang)
    										{
    											$selected = ($_SESSION['LANG'] == $lang)? ' selected="selected"':'';
    											echo '	<option value="'.$lang.'"'.$selected.'>'.$LANG_nom[$_SESSION['LANG']][$idx].'</option>'."\n";
    										} 
    									?>
    								</select>
    							</form>
    							<?php echo 'Langue choisie : '.$_SESSION['LANG']; ?>
    			    	</div>
    			    </div>
    		  	</div>
    		  </div>
        </div>
    	  <nav class="navbar navbar-expand-lg navbar-dark bg-dark ftco-navbar-light" id="ftco-navbar">
    	    <div class="container d-flex align-items-center">
    				<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#ftco-nav" aria-controls="ftco-nav" aria-expanded="false" aria-label="Toggle navigation">
    	        <span class="oi oi-menu"></span> Menu
    	      </button>
    	      <form action="#" class="searchform order-lg-last">
              <div class="form-group d-flex">
                <input type="text" class="form-control pl-3" placeholder="Search">
                <button type="submit" placeholder="" class="form-control search"><span class="ion-ios-search"></span></button>
              </div>
            </form>
    	      <div class="collapse navbar-collapse" id="ftco-nav">
    	        <ul class="navbar-nav mr-auto">
    	        	<li class="nav-item active"><a href="index.php" class="nav-link">Accueil</a></li>
    	        	<li class="nav-item"><a href="presentation.php" class="nav-link">Qui sommes-nous?</a></li>
    	        	<li class="nav-item"><a href="notre-equipe.php" class="nav-link">Notre équipe</a></li>
    	        	<li class="nav-item"><a href="projects.php" class="nav-link">Projets d'études</a></li>
    	        	<li class="nav-item"><a href="services.php" class="nav-link">Services</a></li>
    	        	<li class="nav-item"><a href="actualites.php" class="nav-link">Actualités</a></li>
    	          <li class="nav-item"><a href="contacts.php" class="nav-link">Contacts</a></li>
    	        </ul>
    	      </div>
    	    </div>
    	  </nav>
        <!-- END nav -->
    Dans quelle partie dois-je mettre l'URL du site en français, dans quelle partie dois-je mettre l'URL du site en Anglais et du site en Allemand?
    Merci pour l'éclaircissement!

  7. #7
    Membre chevronné Avatar de ma5t3r
    Homme Profil pro
    Développeur freelance
    Inscrit en
    Mai 2015
    Messages
    320
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2015
    Messages : 320
    Par défaut
    Salut,
    tu ferais mieux de t'orienter vers le lien que t'as donné jreaux62.
    Tu es en train de créer une usine à gaz impossible à maintenir.

    Enfin, bref
    Il y a une erreur de construction de ton HTML
    Le tag OPTION ne doit pas être en dehors du tag SELECT
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <select onchange="this.options[this.selectedIndex].value && (window.location = this.options[this.selectedIndex].value);">
         <option value="">Langue</option>
         <option value="http://localhost/ENTREPRISE-WAWA/index.php">Français</option>
         <option value="http://localhost/ENTREPRISE-WAWA/anglais/index.php">Anglais</option>
         <option value="http://localhost/ENTREPRISE-WAWA/allemand/index.php">Deutsch</option>				
    </select>

  8. #8
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2016
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2016
    Messages : 112
    Par défaut
    Merci ma5t3r .
    A vrai dire, toi ton code est simple à comprendre et à utiliser. Je veux juste que tu m'aides à corriger mes erreurs faites afin de pouvoir l'utiliser convenablement. Je prendrai aussi le script de jreaux62. Mais aides-moi à corriger ce que j'ai fait.
    Merci.

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

    1- entre la méthode de ma5t3r et la mienne, il faut choisir.

    2- Si tu as plusieurs dossiers "fr", "en", es" :

    Dernière modification par Invité ; 04/05/2020 à 16h52.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 17/01/2018, 10h58
  2. [Débutant] Valeur d'un select option dans le code behind
    Par Bibi_Seal dans le forum ASP.NET
    Réponses: 2
    Dernier message: 19/11/2014, 10h19
  3. [MySQL] Remplir grace à un champ DB valeur d'un SELECT (OPTION)
    Par yepos dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 25/06/2012, 09h18
  4. Réponses: 10
    Dernier message: 11/03/2006, 01h51
  5. [Struts]Select, options & value ...
    Par djoukit dans le forum Struts 1
    Réponses: 4
    Dernier message: 01/07/2004, 10h40

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