Ma variable de $_Session ne marche pas
Fermé
Guest
-
7 mars 2014 à 10:25
Nicoblem Messages postés 2 Date d'inscription vendredi 7 mars 2014 Statut Membre Dernière intervention 7 mars 2014 - 7 mars 2014 à 11:36
Nicoblem Messages postés 2 Date d'inscription vendredi 7 mars 2014 Statut Membre Dernière intervention 7 mars 2014 - 7 mars 2014 à 11:36
A voir également:
- Ma variable de $_Session ne marche pas
- Vba excel sélectionner une plage de cellules variable ✓ - Forum VB / VBA
- Impossible de créer le fichier de travail. vérifiez la variable d'environnement temp ✓ - Forum Windows 10
- Variable objet ou variable de bloc with non définie - Forum VB / VBA
- Le fichier contient un programme écrit en python. le programme construit un mot secret mais il ne l'affiche pas. modifiez ce programme afin que à chaque itération de la boucle : la variable a augmente de 2 la variable b diminue de 1 ajoutez une instruction pour faire afficher le mot secret construit. quel est ce mot secret ? ✓ - Forum Python
6 réponses
Utilisateur anonyme
Modifié par le père. le 7/03/2014 à 11:26
Modifié par le père. le 7/03/2014 à 11:26
Bonjour
Ton code ne modifie en rien $_SESSION['page'] car cette variable se trouve dans le serveur et tes "onclick" n'agissent que localement, chez le client. Regarde le code source généré par ta page, celui que tu vois avec Ctrl-U : il n'y a aucun $_SESSION['page'] dedans.
Si tu veux vraiment modifier cette variable, il faut que le serveur soit invoqué d'une manière ou d'une autre quand tu cliques sur tes boutons, en utilisant la méthode Window.location et en faisant ton incrémentation en PHP. Tu peux aussi le faire en Ajax.
Si tu veux simplement incrémenter un nombre, utilise une variable Javascript et le PHP n'a plus rien à faire là-dedans.
Ton code ne modifie en rien $_SESSION['page'] car cette variable se trouve dans le serveur et tes "onclick" n'agissent que localement, chez le client. Regarde le code source généré par ta page, celui que tu vois avec Ctrl-U : il n'y a aucun $_SESSION['page'] dedans.
Si tu veux vraiment modifier cette variable, il faut que le serveur soit invoqué d'une manière ou d'une autre quand tu cliques sur tes boutons, en utilisant la méthode Window.location et en faisant ton incrémentation en PHP. Tu peux aussi le faire en Ajax.
Si tu veux simplement incrémenter un nombre, utilise une variable Javascript et le PHP n'a plus rien à faire là-dedans.
Utilisateur anonyme
7 mars 2014 à 10:36
7 mars 2014 à 10:36
Salut,
Tu n'oublierais pas quelques points-virgules avec echo, par hasard ?
Tu n'oublierais pas quelques points-virgules avec echo, par hasard ?
Nicoblem
Messages postés
2
Date d'inscription
vendredi 7 mars 2014
Statut
Membre
Dernière intervention
7 mars 2014
7 mars 2014 à 10:49
7 mars 2014 à 10:49
Salut et merci de ton aide,
C'est vrai que mon code manquait de point virgule dans les balises PHP, je les ai rajoutés ais ca ne marche toujours pas malheureusement
Quand je clique sur le bouton "echo" tout se passe bien et on me renvoi l'alerte mais quand je clique sur le bouton d'incrémentation ou de décrémentation rien ne se passe et la variable $_session['page'] n'est pas modifiée... :/
C'est vrai que mon code manquait de point virgule dans les balises PHP, je les ai rajoutés ais ca ne marche toujours pas malheureusement
Quand je clique sur le bouton "echo" tout se passe bien et on me renvoi l'alerte mais quand je clique sur le bouton d'incrémentation ou de décrémentation rien ne se passe et la variable $_session['page'] n'est pas modifiée... :/
$_SESSION['page']-1 -> --$_SESSION['page']
$_SESSION['page']+1 -> ++$_SESSION['page']
https://www.php.net/manual/fr/language.operators.increment.php
$_SESSION['page']+1 -> ++$_SESSION['page']
https://www.php.net/manual/fr/language.operators.increment.php
Nicoblem
Messages postés
2
Date d'inscription
vendredi 7 mars 2014
Statut
Membre
Dernière intervention
7 mars 2014
Modifié par Nicoblem le 7/03/2014 à 11:03
Modifié par Nicoblem le 7/03/2014 à 11:03
Non toujours rien, ça ne marche pas c'est toujours pareil écho fonctionne mais pas l'incrémentation ou la décrémentation.
(voilà le nouveau code, j'ai peut-être commis une erreur )
(voilà le nouveau code, j'ai peut-être commis une erreur )
<?php session_start(); ?> <html> <body> <?php if (!isset($GLOBALS['page'])) { $GLOBALS['page'] = 100; } ?> <input type='button' value='page' id="Btn33" onclick="<?php echo "alert('".$GLOBALS['page']."')"; ?>"/> <input type='button' value='-' id="Btn22" onclick="<?php --$_SESSION['page'] ; ?>"/> <input type='button' value='+'id="Btn27" onclick="<?php ++$_SESSION['page'] ; ?>"/> </body> </html>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Nicoblem
Messages postés
2
Date d'inscription
vendredi 7 mars 2014
Statut
Membre
Dernière intervention
7 mars 2014
7 mars 2014 à 11:12
7 mars 2014 à 11:12
Euh... je suis pas sure de comprendre désolé ^^'
Je faisais des recherches en même temps et j'avais essayé la modification des $_sessions $globals c'est de ca que tu me parlais ?
voila mon VRAI code mais le problème reste exactement le même malheureusement
Je faisais des recherches en même temps et j'avais essayé la modification des $_sessions $globals c'est de ca que tu me parlais ?
voila mon VRAI code mais le problème reste exactement le même malheureusement
<?php
session_start();
?>
<html>
<body>
<?php
if (!isset($_SESSION['page']))
{
$_SESSION['page'] = 100;
}
?>
<input type='button' value='page' id="Btn33" onclick="<?php echo "alert('".$_SESSION['page']."')"; ?>"/>
<input type='button' value='-' id="Btn22" onclick="<?php --$_SESSION['page'] ; ?>"/>
<input type='button' value='+'id="Btn27" onclick="<?php ++$_SESSION['page'] ; ?>"/>
</body>
</html>
Quand tu visionnes ta page sur le navigateur internet (Firefox, Explorer, Chrome, etc).
Tu fais clique-droit -> Code source de la page.
Tu verras que le code PHP disparaît, c'est à dire qu'il a été interprété avant que le navigateur ne l'affiche. Et donc, dans le onclick, au lieu d'incrémenter, il ne se passera rien car c'est vide. Il faut lui mettre un lien vers une autre page PHP qui sera chargée d'incrémenter/décrémenter la variable.
Si tu as du mal à comprendre ça, arrêtes tout de suite et ré-étudies le PHP et le Javascript.
Tu fais clique-droit -> Code source de la page.
Tu verras que le code PHP disparaît, c'est à dire qu'il a été interprété avant que le navigateur ne l'affiche. Et donc, dans le onclick, au lieu d'incrémenter, il ne se passera rien car c'est vide. Il faut lui mettre un lien vers une autre page PHP qui sera chargée d'incrémenter/décrémenter la variable.
Si tu as du mal à comprendre ça, arrêtes tout de suite et ré-étudies le PHP et le Javascript.
Nicoblem
Messages postés
2
Date d'inscription
vendredi 7 mars 2014
Statut
Membre
Dernière intervention
7 mars 2014
7 mars 2014 à 11:23
7 mars 2014 à 11:23
Non non t'inquiète pas, je comprend ce que tu dis ^^
je ne comprend pas POURQUOI ça me fait ça en revanche mais bon je connais le problème maintenant au moins ^^
merci beaucoup à toi
je ne comprend pas POURQUOI ça me fait ça en revanche mais bon je connais le problème maintenant au moins ^^
merci beaucoup à toi
7 mars 2014 à 11:36