Page 1 sur 2
msg erreur au sujet variable session
Posté : 20 févr. 2008, 12:55
par Invité
Bonjour,
Voila j'ai un soucis, j'ai l'impression que ma variable de session marche mais cela m'affiche ce message d'erreur. Et je ne comprend pas.
Si vous avez une idée. ça m'aiderai vraiment
Code : Tout sélectionner
Unknown: Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively
Merci d'avance
Posté : 20 févr. 2008, 15:09
par mere-teresa
Quelle version de PHP utilises-tu ?
Peux tu poster ici la partie de ton script qui pose problème ?
Posté : 20 févr. 2008, 15:36
par Invité
$_SESSION['tes'] = $_REQUEST["texte"];
il y a que ça que j'ai rajouté et
$tes=$_SESSION['tes'];
mais ma variable de session est bien pris en compte donc je comprend pas.
merci
wamps 1.6.6 donc j'utilise le php qui est avec, la version 4
Posté : 20 févr. 2008, 15:55
par mere-teresa
Mets à jour WampServer, la version 2 te permet de choisir ta version de PHP (4.1, 4.2, etc.)
Posté : 20 févr. 2008, 16:40
par Invité
oui, mais ça change quoi a mon problème. J'utilise déjà les variable de sessions et j'ai pas de souci de message d'erreur.
merci
Posté : 20 févr. 2008, 16:52
par mere-teresa
$tes=$_SESSION['tes']; //si tu mets cette ligne en commentaire, as-tu tujours le message ?
A quelle valeur est ta directive register_globals ? On ou Off ?
Posté : 21 févr. 2008, 11:25
par Invité
j'ai rien touché a la config d'origine a ce niveau.
Comment es-ce que je fais pour savoir ?
merci
Posté : 21 févr. 2008, 11:29
par d0m
tu veux dire qu'avec certaines pages les sessions marchent, et avec ta page qui affiche le message d'erreur elles ne fonctionnent plus?
Dans ce cas quelles différences y a t il au niveau des codes?
Posté : 21 févr. 2008, 11:36
par Invité
Non, se que je veux dire c'est que ça marche partout mais que ça m'affiche un message d'erreur, alors que ça marche
Posté : 21 févr. 2008, 11:56
par d0m
Est ce que tu utilises les fonctions
session_register() ou
session_is_registered() ?
Est ce que tu mets NULL dans la variable de session?
$_SESSION['blabla] = NULL;
Est ce que tu mets une variable globale dans la variable de session?
$global $var=...;
$_SESSION['blabla] = $var;
Posté : 21 févr. 2008, 12:27
par Invité
je met pas null dans ma variable.
En faite ma variable est enregistrer a partir d'un formulaire, et est réutiliser a partir de cette même fenêtre, lorsque l'on revient dessus plus tard. Si j'appelle ma variable dans une autre fenêtre j'ai pas de souci. Mais c'est seulement quand j'appelle a partir de cette fenêtre que cela m'affiche le message. Sans pour autant ne pas fonctionner.
Auriez vous une idée de se qui pourrai faire afficher ça sur ma fenetre ? j'ai rien de spécial de différent par rapport au autre fenêtre.
(peux pas vous mettre le code j'ai plus de 600 lignes)
mrci
Posté : 26 févr. 2008, 15:05
par Invité
je suis toujours avec mon problème.
En faite dans ma fenetre j'ai une recherche qui est valider par un bouton. Et je prend un des champs du fomulaire que je met dans une variable de session.
Je le met de cette manière :
<input name="sub" type="image" onClick="<?php $nom=$_REQUEST["texte"]; $_SESSION['tes'] = $_REQUEST["texte"]; ?>" src="../image/bouton/button1F.gif" width="115" height="23" border="0">
pensez vous que cela vienne de cela ?
merci
Posté : 26 févr. 2008, 15:14
par Ryle
Le problème ne doit pas venir de là, mais il n'en reste pas moins que tu mélanges langage côté client et côté serveur : onClick est une action javascript effectuée par le client, chez lui, sur son navigateur, tandis que PHP est un langage exécuté sur le serveur, probablement à des miliers de km de là... tu ne pourras donc pas faire exécuter du code php directement dans un onClick.
Il te faut pour cela soumettre une requête auprès du serveur, soit en envoyant un formulaire, soit en ouvrant une page spécifique, soit en utilisant du javascript (et notament ajax)
Quant au message, as-tu essayé de paramétrer session.bug_compat_42 ou session.bug_compat_warn (probablement situés dans le php.ini) à off, comme suggéré ?
Posté : 26 févr. 2008, 15:32
par Invité
j'ai mis a off les 2 :
session.bug_compat_42 = off
session.bug_compat_warn = off
mais maintenant cela ne garde plus en mémoire la valeur de ma variable
avant de modifier j'avais
session.bug_compat_42 = 1
session.bug_compat_warn = 1
Le problème ne doit pas venir de là, mais il n'en reste pas moins que tu mélanges langage côté client et côté serveur : onClick est une action javascript effectuée par le client, chez lui, sur son navigateur, tandis que PHP est un langage exécuté sur le serveur, probablement à des miliers de km de là... tu ne pourras donc pas faire exécuter du code php directement dans un onClick.
pourtant je n'ai aucun probleme a ce niveau la, mon code fonctionne. J'ai bien le resultat souhaité.
merci
Posté : 26 févr. 2008, 15:58
par Ryle
Ton code fonctionne et il va effectivement affecter $_REQUEST["texte"] a $nom et $_REQUEST["texte"] à $_SESSION['tes'], mais il va le faire dès l'exécution du script php sur le serveur et certainement pas au moment d'un click sur ton input
