[PHP][JAVASCRIPT] detecter le mode on ou off du javascript

Répondre
Partager Rechercher
J'avance mon site a grand pas mais j'ai encore besoin de vous à cause d'un nouveau problème. Beaucoup de gens proposent des scripts pour vérifier si le javascript est on ou off comme celui ci:
Code PHP:

<script type="text/javascript">document.write("<p> javascript actif!</p>");</script>

<
noscript><p>Javascript est désactivé.</p></noscript
Hors quand je suis avec le javascript on j'ai bien le message "javascript actif!" mais quand il est off je n'ai pas "Javascript est désactivé"...
Je me suis demandé si la balise <noscript></noscript> est périmé, j'ai un peu cherché sur google et je n'ai pas trouvé de réponse officiel... C'est donc vers Vous que je me tourne!

Update : La balise noscript marche mais je n'arrive pas a intégrer de php dedans

Code PHP:

<script type="text/javascript"></script>
<noscript><?Php $jscript FALSE?></noscript>
<?Php echo ($jscript===TRUE) ? 'jscript on' 'jscript off';?>
Si quelqu'un a une solution , pour le moment il me prend tout le temps en compte jscript false
Essaye un truc dans ce genre:

Code PHP:

<script src='jsTest.php'></script
Et dans jsTest.php tu mets juste un truc du genre.

Code PHP:

session_start();
$_SESSION['js_enabled'] = true
Comme ça si le gars a pas JS, ton jsTest n'est pas appelé et js_enabled n'existe pas, permettant de savoir que l'user n'a pas JS.

Mais bon, il n'y a aucun moyen efficace de tester ça, puisque PHP tourne sur le serveur et JS sur le client, il est impossible avec PHP de savoir la première fois qu'un user vient sur ton site, tu dois forcement passer par un call supplementaire pour setter un flag.
De loin, ton PHP sera interprété quoi qu'il arrive là, la solution "classique" c'est de rediriger l'utilisateur avec une balise meta qui va bien avec un message comme quoi il doit avoir javascript pour voir cette page.

N'oublie pas que le Javascript doit venir en "surcouche" pour améliorer le confort de l'utilisateur et que les fonctions principales de ton site devrait rester accessible à tout tes utilisateurs.

Code PHP:

<?Php echo ($jscript===TRUE) ? 'jscript on' 'jscript off';?>
<?Php 
echo ($jscript) ? 'jscript on' 'jscript off';?> // tant que ta condition n'est pas false ou null, elle est true
Citation :
Publié par Mikushi
Essaye un truc dans ce genre:

Code PHP:

<script src='jsTest.php'></script
Et dans jsTest.php tu mets juste un truc du genre.

Code PHP:

session_start();
$_SESSION['js_enabled'] = true
Comme ça si le gars a pas JS, ton jsTest n'est pas appelé et js_enabled n'existe pas, permettant de savoir que l'user n'a pas JS.

Mais bon, il n'y a aucun moyen efficace de tester ça, puisque PHP tourne sur le serveur et JS sur le client, il est impossible avec PHP de savoir la première fois qu'un user vient sur ton site, tu dois forcement passer par un call supplementaire pour setter un flag.
Je sais que ce n'est pas possible la première fois, mais ton idée de scr dans la balise script est pas mal je vais tester ça
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés