2012-07-20 4 views
1

Sur une page de mon site Web, des variables sont stockées dans des sessions et sur une autre page, il est nécessaire de les réutiliser, mais cela ne fonctionne pas.Les sessions PHP ne fonctionnent pas

Ceci est sur la première page.

<?php 
session_start(); 
$_SESSION['email']=$_POST["email"]; 
$_SESSION['username']=$_POST["uname"]; 
$_SESSION['password']=$_POST["cpass"]; 
?> 

<html> 

Ceci est la deuxième page, tout simplement simple mais je n'arrive pas à la faire fonctionner.

<html> 
<body> 
$emailcc = $_SESSION['email']; 
$usernamecc = $_SESSION['uname']; 
$passcc = $_SESSION['cpass']; 

Ma deuxième page mise à jour

<?php 
session_start(); 
?> 

<html> 
<body> 

<?php 

$emailcc = $_SESSION['email']; 
$usernamecc = $_SESSION['uname']; 
$passcc = $_SESSION['cpass']; 

Il ne fonctionne toujours pas lorsque je tente de l'ajouter à sql ou à la sortie de la variable est vide.

mysql_query("INSERT INTO Users (Username, Password, Email, Notes, Pass) 
VALUES ('$usernamecc', '$passcc', '$emailcc', 3, 1)"); 

Répondre

10

Vous devez <?php session_start(); ?> en haut de la deuxième page, ou avant toute sortie est envoyée au navigateur (à moins que vous utilisez en mémoire tampon de sortie).

De plus, votre deuxième fichier devra être analysé par PHP, donc s'il s'agit d'un fichier HTML, vous devrez le renommer en .php ou configurer votre serveur pour analyser les fichiers .html.

+0

dois-je ajouter que ou dois-je réclamer les variables ci-dessus de la balise html comme disent les réponses ci-dessus? –

+0

Vous ajoutez simplement cela - Vous pouvez saisir les variables de '$ _SESSION' quand vous voulez, aussi longtemps que vous avez appelé' session_start(); 'déjà. – nickb

+0

veuillez s'il vous plaît regarder la mise à jour du code que j'ai fait? Cela ne semble toujours pas fonctionner. –

2

Essayez ceci sur la deuxième page:

<?php 
session_start(); 
$emailcc = $_SESSION['email']; 
$usernamecc = $_SESSION['uname']; 
$passcc = $_SESSION['cpass']; 
?> 

Avant la session d'utilisation, vous devez appeler session_start()

0

Essayez ceci sur la première page:

<?php 
session_start(); 
$_SESSION['email']=$_REQUEST["email"]; 
$_SESSION['username']=$_REQUEST["uname"]; 
$_SESSION['password']=$_REQUEST["cpass"]; 
?> 

Essayez ceci sur deuxième page : (Vous utilisiez des noms de session erronés sur cette page)

<?php 
session_start(); 
$emailcc = $_SESSION['email']; 
$usernamecc = $_SESSION['username']; 
$passcc = $_SESSION['password']; 
?> 

MYSQL

mysql_query("INSERT INTO Users (Username, Password, Email, Notes, Pass) 
VALUES ($usernamecc, $passcc, $emailcc, 3, 1)"); 
Questions connexes