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

Langage PHP Discussion :

[PHP-JS] Détecter immédiatement Javascript sans la méthode GET


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mars 2004
    Messages : 84
    Par défaut [PHP-JS] Détecter immédiatement Javascript sans la méthode GET
    Salut à tous,

    Sur mon site je souhaiterais savoir si l'utilisateur a désactivé ou non Javascript. J'ai vu les deux fonctions que proposent les FAQ PHP/JS de developpez.com, mais elles ne conviennent ni l'une ni l'autre car j'ai besoin :
    - que la détection se fasse immédiatement (sans soumission comme nécessaire ici)
    - que le script n'utilise pas la méthode GET comme dans cette fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function checkJavascript()
    {
        if(!isset($_GET['js']))
        {
            $url=@eregi_replace($_SERVER['DOCUMENT_ROOT'], 'http://'.$_SERVER['HTTP_HOST'],$_SERVER['SCRIPT_FILENAME']);
            echo '<script type="text/javascript">window.location.href="'.$url.'?js=1";</script>';
            echo '<noscript><meta http-equiv="refresh" content="0; url='.$url.'?js=2"/></noscript>';
        }
     
        if($_GET['js']=='1') echo 'JS activé<br/>';
        if($_GET['js']=='2') echo 'JS désactivé<br/>';
    }
    car je passe d'autres paramètres avec la méthode GET. Or avec la solution ci-dessus, le paramètre '?js=1' va remplacer ces autres paramètres, par exemple '?err=1' qui me sert dans une autre fonction.

    Merci par avance.

  2. #2
    Membre éclairé Avatar de renaudjuif
    Inscrit en
    Avril 2006
    Messages
    325
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 325
    Par défaut
    Salut,

    tu as la fonction get_browser qui te retourne 1 tableau avec les infos navigateur client, dont le javascript qui est à 1 ou 0.

    pour + d'infos : http://fr.php.net/get_browser

  3. #3
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mars 2004
    Messages : 84
    Par défaut
    Citation Envoyé par renaudjuif
    tu as la fonction get_browser qui te retourne 1 tableau avec les infos navigateur client, dont le javascript qui est à 1 ou 0.

    pour + d'infos : http://fr.php.net/get_browser
    Non pas exactement, sur php.net il est expliqué que :

    Be aware of the fact that this function shows what a specific browser might be able to show, but NOT what the user has turned on/off.

    So maybe this function tells you that the browser is abel to to javascript even when javascript is turned off by the user.

  4. #4
    Membre éclairé Avatar de renaudjuif
    Inscrit en
    Avril 2006
    Messages
    325
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 325
    Par défaut
    Effectivement, autant pour moi...
    La prochaine fois je lirai la doc jusqu'au bout

  5. #5
    Rédacteur
    Avatar de MasterOfChakhaL
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2004
    Messages
    2 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 147
    Par défaut
    Pourquoi est ce que dans ta ligne qui définit la variable $url tu ne gères pas la présence éventuelle de parmètres get déjà présent?

    Tu les détectes, et s'il y en a, tu les rajoutes à ton url...
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    N'oubliez pas de cliquer sur quand votre question à trouvé une solution.

    Si vous n'avez pas encore lu les règles du club, mieux vaut tard que jamais!

  6. #6
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mars 2004
    Messages : 84
    Par défaut
    Citation Envoyé par MasterOfChakhaL
    Pourquoi est ce que dans ta ligne qui définit la variable $url tu ne gères pas la présence éventuelle de parmètres get déjà présent?

    Tu les détectes, et s'il y en a, tu les rajoutes à ton url...
    J'y ai pensé mais je ne sais pas comment faire techniquement...

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 19/04/2008, 14h03
  2. [PHP-JS] Arguments PHP d'une fonction javascript
    Par Néo-Tony dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 22/12/2004, 12h06
  3. [PHP-JS] Php dans un script javascript
    Par nebule dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 30/11/2004, 10h38
  4. [PHP-JS] Envoi de variable sans passer par un submit
    Par adilou1981 dans le forum Langage
    Réponses: 4
    Dernier message: 15/11/2004, 19h21
  5. Réponses: 4
    Dernier message: 02/06/2004, 16h35

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