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

VB.NET Discussion :

Détecter la langue du navigateur.


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 115
    Par défaut Détecter la langue du navigateur.
    Bonjour à tous,

    Je souhaiterai détecter la langue courante du navigateur employé, ceci en VB.Net.
    Existe-t'il une solution ?

    Merci et à bientôt.

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Avec un truc comme ça, ça devrait le faire...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim langue As String = Request("HTTP_ACCEPT_LANGUAGE")
    EDIT: en fait il y a mieux : la propriété UserLanguages renvoie un tableau des langues acceptées par le client :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim langue As String = Request.UserLanguages(0)

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 115
    Par défaut
    Merci pour ta réponse, j'ai utilisé le second après recherche sur le Web...
    Je ne peux pas encore vous dire si cela marche, car je bute sur un pb en amont.

    Je n'arrive pas à tester si un cookie existe bien, ou si il est égal à une valeur.

    Quelqu'un peut-il m'aider dans cette quête ?

    Merci et à bientôt.

  4. #4
    Membre Expert Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Par défaut
    Alors pour voir si les cookies sont acceptés, personnellement j'ai testé de cette manière :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    '++ To know if cookies are accepted
    Dim AcceptCookies As Boolean
    Response.Cookies("TestCookie").Value = "Test cookies"
    If (Request.Cookies("TestCookie") Is Nothing) Then
    AcceptCookies = False
    Else
    AcceptCookies = True
    Response.Cookies("TestCookie").Expires = DateTime.Now
    End If
    En fait tu crée en cookie provisoire afin de tester si l'utilisateur l'a accepté ou non. Es-ce que cela te convient ?

  5. #5
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 115
    Par défaut
    Merci, j'ai utilisé quelque chose d'assez semblable...
    Par contre, on ne crée pas de cookie temporaire, on vérifie juste si il existe (nothing).
    Grosso modo, voilà ce que j'ai pour un module de redirection de page, avec sauvegarde par cookie :

    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
    Dim language As String = Request.UserLanguages(0)
     
                ' Récupération de la langue du portail.
                Select Case Me.PortalId()
                    Case 0
                        country = "TabsFrId"
                    Case 1
                        country = "TabsUkId"
                    Case 2
                        country = "TabsDeId"
                    Case 3
                        country = "TabsEsId"
                End Select
     
                'Récupération de la langue du navigateur.
                Select Case language.Substring(0, 2)
                    Case "fr"
                        country_dest = "TabsFrId"
                    Case "en"
                        country_dest = "TabsUkId"
                    Case "de"
                        country_dest = "TabsDeId"
                    Case "es"
                        country_dest = "TabsEsId"
                    Case Else
                        country_dest = "TabsUkId"
                End Select
     
                If Request.Cookies("redirect") Is Nothing Then
                    Dim cookieRedirect As New HttpCookie("redirect")
                    cookieRedirect.Value = 1
                    Response.Cookies.Add(cookieRedirect)
     
                    If Request.Cookies("langue") Is Nothing Then
                        Dim cookieLangue As New HttpCookie("langue")
                        cookieLangue.Value = language.Substring(0, 2)
                        Response.Cookies.Add(cookieLangue)
                    End If
     
                    'Execution de la redirection.
                    Try
    A bientôt.

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

Discussions similaires

  1. Réponses: 31
    Dernier message: 23/03/2012, 17h33
  2. [PHP-JS] Détection de la langue du navigateur
    Par nako dans le forum Langage
    Réponses: 4
    Dernier message: 28/02/2007, 13h13
  3. Détecter la langue du browser client
    Par jpastier dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 29/01/2007, 10h40
  4. [JSP] Récupérer la langue du navigateur sans js
    Par Snivel dans le forum Struts 1
    Réponses: 2
    Dernier message: 31/03/2006, 17h56
  5. [Configuration] Détecter des paramètres du navigateur client...
    Par Olish dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 8
    Dernier message: 08/10/2005, 18h09

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