J'ai deja poste un sujet la dessus, mais je me suis un peu embrouille... J'ai reelement besoin d'aide, ca doit pas etre grand chose... Voila l'explication, ca risque d'etre un peu long...
J'ai cree un site ou il y'a la possibilite d'etre membre. Pour se logguer, on entre son mot de passe et son login, classique quoi. De mon cote, mon programme regarde dans une BDD SQL les donnees et accepte en cas d'infos corrects. Une fois loggue, le membre peut ecrire des messages internes au autres membres. Pour se faire, il suffit de remplir un formulaire et de le poster.
Lors du post, pour une raison obscur, la session du membre est detruite.... Je voudrais en connaitre la raison.
Mon site tient en fait sur une seule page par un procede de pseudo frames. voila le code du debut :
session_start();
if ($page=="ident_check" )
{
echo "je suis rentre alors que je n'ai pas le droit!!";
$sql = "select * from trolls where pseudo='$login'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_object($req);
if(($data->password != $passwd) || !mysql_numrows($req))
{
$log=0;
}
else
{
$log=1;
$session_prenom = $data->prenom;
$session_statut = $data->statut;
$session_pseudo = $data->pseudo;
$session_troll = $data->id_troll;
session_register('session_prenom';
session_register('session_pseudo';
session_register('session_statut';
session_register('session_troll';
}
}
else if (!empty($page))
{
$requete = "Select * from redirection where page='$page'";
$query = mysql_query($requete) or die("Adresse corrompue" );
$page_result = mysql_fetch_object($query);
if ($page_result->membre == "o" )
{
if (session_is_registered('session_pseudo')
{
$log = 1;
}
else
{
$log = 0;
}
}
}
Ce probleme ne se produit que sur la page de post qui ne contient AUCUNE operation relative aux sessions... la page de post contient :
if (!empty($message) && !empty($sujet) && !empty($destinataire))
{
$date = date("M j" );
$requete = "INSERT INTO msg_membre";
$requete .= " VALUES (null,'$destinataire','$message
','non-lu','','
$session_id', '$sujet', '$date'";
mysql_query($requete) or die('Erreur SQL !<br>'.$requete.'<br>'.mysql_error());
echo "Message posté!";
}
else
{
echo "Il manque trop de champs pour poster ce message... Désolé !";
}
J'ai reelement besoin d'un coup de pouce...