PHP/Apache: $_SESSION perdue
alandugatinais
Messages postés
3
Statut
Membre
-
alandugatinais -
alandugatinais -
Bonjour,
Suivant le code php qui me pose problème. Quand je clique sur le bouton "charger" ou sur le lien hypertexte "Reload", la page se recharge mais le contenu de $_session est perdue et donc est réinitialisé: pourquoi ?
Pour info, ce code php est une modélisation d'un autre problème où je dois recharger ma page pour insérer en dur une adresse postal créée dans un formulaire, mon but étant de sauvegarder tous les nouvelles adresses postales dans $_SESSION avant de les insérer dans une base mySQL.
Dans php.ini, j'ai session.cache_limiter = nocache
<?php
session_start();
?>
<title>TEST</title>
<?php
if (count($_SESSION)==0) {
echo "<br>vide, on le charge<br>";
for ($i=1;$i<10;$i++) {
$_SESSION[$i]=$i;
}
foreach ($_SESSION as $key=>$Value) echo "$key $value";
}
else {
echo "<br>plein, on l'affiche<br>";
foreach ($_SESSION as $key=>$Value) echo "$key $value";
}
?>
<form name="formulaire">
<a href="test4.php">Reload</a>
<input type="button" value="Charger" onclick="Charger();">
</form>
<script>
function Charger() {
document.formulaire.action='test4.php';
document.formulaire.submit();
}
</script>
Suivant le code php qui me pose problème. Quand je clique sur le bouton "charger" ou sur le lien hypertexte "Reload", la page se recharge mais le contenu de $_session est perdue et donc est réinitialisé: pourquoi ?
Pour info, ce code php est une modélisation d'un autre problème où je dois recharger ma page pour insérer en dur une adresse postal créée dans un formulaire, mon but étant de sauvegarder tous les nouvelles adresses postales dans $_SESSION avant de les insérer dans une base mySQL.
Dans php.ini, j'ai session.cache_limiter = nocache
<?php
session_start();
?>
<title>TEST</title>
<?php
if (count($_SESSION)==0) {
echo "<br>vide, on le charge<br>";
for ($i=1;$i<10;$i++) {
$_SESSION[$i]=$i;
}
foreach ($_SESSION as $key=>$Value) echo "$key $value";
}
else {
echo "<br>plein, on l'affiche<br>";
foreach ($_SESSION as $key=>$Value) echo "$key $value";
}
?>
<form name="formulaire">
<a href="test4.php">Reload</a>
<input type="button" value="Charger" onclick="Charger();">
</form>
<script>
function Charger() {
document.formulaire.action='test4.php';
document.formulaire.submit();
}
</script>
A voir également:
- PHP/Apache: $_SESSION perdue
- Apache open office gratuit - Télécharger - Suite bureautique
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Redemarrer apache - Forum Linux / Unix
2 réponses
salut alandugatinais, j'ai le même problème.
J'étais sur free avant, et je suis passer sous un serveur local, en gardant le meme script, et maintenant à chaque fois que je reload, je perds la variable session...
Je penses que ça peut être un problème de php.ini, mais lequel ?!
NEED HELP !!!
J'étais sur free avant, et je suis passer sous un serveur local, en gardant le meme script, et maintenant à chaque fois que je reload, je perds la variable session...
Je penses que ça peut être un problème de php.ini, mais lequel ?!
NEED HELP !!!
J'ai fini par trouver quelques éléments d'informations:
- il est recommandé d'utiliser des string plutôt que des integer comme clé dans $_SESSION
- dans php.ini, il est recommandé de mettre la variable "register_globals" à off
- en entête de chaque nouvelle page php ne pas oublier de mettre session_start()
Sinon mon problème était qu'une variable globale était nommé $_SESSION
Cordialement,
Alan du Gatinais
- il est recommandé d'utiliser des string plutôt que des integer comme clé dans $_SESSION
- dans php.ini, il est recommandé de mettre la variable "register_globals" à off
- en entête de chaque nouvelle page php ne pas oublier de mettre session_start()
Sinon mon problème était qu'une variable globale était nommé $_SESSION
Cordialement,
Alan du Gatinais