session ne fonctionne plus de php4 à php5
9 messages
• Page 1 sur 1
- fabrice88
- WRInaute occasionnel

- Messages: 289
- Inscription: 15 Oct 2007
session ne fonctionne plus de php4 à php5
Bonjour,
pour l'administration de mon site internet qui est en php4 j'utilise pour me connecter un systeme d'identifacation par login et mot de passe.
le probleme et que je souhaiterai passer en php5 mais dès que je me met en php 5 impossible de me connecter (dès que je valide le login et mot de passe je suis redirigé vers l'index de l'admin... et aucun messages d'erreurs)
voici ma page connexion :
et voici ma page index.php
pour l'administration de mon site internet qui est en php4 j'utilise pour me connecter un systeme d'identifacation par login et mot de passe.
le probleme et que je souhaiterai passer en php5 mais dès que je me met en php 5 impossible de me connecter (dès que je valide le login et mot de passe je suis redirigé vers l'index de l'admin... et aucun messages d'erreurs)
voici ma page connexion :
- Code: Tout sélectionner
<?php
session_start();
// Redirige l'utilisateur s'il est déjà identifié
if(isset($_SESSION["TB_Nom_Utilisateur"]))
{
header("Location: index.php");
}
else
{
// Formulaire visible par défaut
$masquer_formulaire = false;
// Une fois le formulaire envoyé
if(isset($_POST["BT_Envoyer"]))
{
// Vérification de la validité des champs
if(!ereg("^[A-Za-z0-9_]{2,20}$", $_POST["TB_Nom_Utilisateur"]))
{
$message = "Votre nom d'utilisateur doit comporter entre 2 et 20 caractères<br />\n";
$message .= "L'utilisation de l'underscore est autorisée";
}
elseif(!ereg("^[A-Za-z0-9]{6,}$", $_POST["TB_Mot_de_Passe"]))
{
$message = "Votre mot de passe doit comporter au moins 6 caractères";
}
else
{
// Connexion à la base de données
// Valeurs à modifier selon vos paramètres configuration
mysql_connect("***","****","");
mysql_select_db("****");
// Sélection de l'utilisateur concerné
$result = mysql_query("
SELECT ID_Utilisateur, Nom_Utilisateur, Mot_de_Passe, Compte_Active
FROM Comptes_Utilisateurs
WHERE Nom_Utilisateur = '" . $_POST["TB_Nom_Utilisateur"] . "'
");
// Si une erreur survient
if(!$result)
{
$message = "Une erreur est survenue lors de la tentative de connexion";
}
else
{
// Si aucun utilisateur n'a été trouvé
if(mysql_num_rows($result) == 0)
{
$message = "Le nom d'utilisateur " . $_POST["TB_Nom_Utilisateur"] . " n'existe pas";
}
else
{
// Récupération des données
$row = mysql_fetch_array($result);
// Si le compte n'a pas été activé
if($row["Compte_Active"] == 0)
{
$message = "Votre compte utilisateur n'a pas été activé";
}
else
{
// Vérification du mot de passe
if(md5($_POST["TB_Mot_de_Passe"]) != $row["Mot_de_Passe"])
{
$message = "Votre mot de passe est incorrect";
}
else
{
//création de session
$_SESSION['TB_Nom_Utilisateur'] = $TB_Nom_Utilisateur; //
$_SESSION['ID_Utilisateur'] = $ID_Utilisateur; //
//enregistrement de l'ouverture de session pour statistique
$sql = "INSERT INTO IWhistocnx(ID_Utilisateur, Nom_Utilisateur, Date_Connexion )
VALUES('','$TB_Nom_Utilisateur', NOW())"; mysql_query($sql) or die('Erreur SQL !'.$sql.' '.mysql_error());
// Fermeture de la connexion à la base de données
mysql_close();
// Redirection de l'utilisateur
header("Location: index.php");
}
}
}
}
// Fermeture de la connexion à la base de données
mysql_close();
}
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Connexion</title>
<link href="../admin/style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.Style1 {color: #000000}
-->
</style>
</head>
<body>
<div class="center">
<?php if(isset($message)) { ?>
<?php echo $message; ?><?php } if($masquer_formulaire != true) { ?>
<form id="monForm" action="http://<?php echo $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]; ?>" method="post">
<fieldset>
<legend><span class="Style1">Connexion Admin</span></legend>
<label>Nom d'utilisateur</label> <input type="text" name="TB_Nom_Utilisateur" />
<label>Mot de passe</label> <input type="password" name="TB_Mot_de_Passe" />
Connexion automatique <input type="checkbox" name="CB_Connexion_Automatique" />
<input type="submit" name="BT_Envoyer" value="Envoyer" />
</fieldset>
</form>
<?php } ?>
</div>
</body>
</html>
et voici ma page index.php
- Code: Tout sélectionner
<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Administration du site <?php echo $_SERVER['HTTP_HOST']; ?></title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<?php if(isset($_SESSION["TB_Nom_Utilisateur"])) { ?>
<div id="global">
<div id="header">
<a href="index.php"><img src="images/accueil.png" alt="accueil administration" width="36" height="38" class="accico" /></a>
Administration du site <a href="http://<?php echo $_SERVER['HTTP_HOST'] ?>"><?php echo $_SERVER['HTTP_HOST']; ?></a><br/>
<?php echo 'Vous êtes connecté en tant que : ' .$_SESSION["TB_Nom_Utilisateur"]; ?> |
<a href="http://<?php echo $_SERVER['HTTP_HOST'].'/admin/deconnexion.php' ?>">Se Déconnecter</a><br/>
<?php
$date = date("d-m-Y");
$heure = date("H:i");
Print("Nous sommes le $date et il est $heure");
?>
</div><!--Fin de header -->
<div id="contenu">
<h1>Gestion dynamique du site</h1>
<h2>Sélectionner votre destination</h2>
<ul id='adminmenu'>
<li><a href="galerie/gestion-galerie.php">Gestion de la Galerie Photos</a></li>
<li><a href="News/gestion-news.php">Gestion des News / Actualités</a></li>
</ul>
<div class="clear15px"></div>
</div>
<div id="footer">
</div>
<!--Fin de contenu -->
</div><!--Fin de global -->
<?php } else { ?>
<a href="connexion.php"><img src="http://<?php echo $_SERVER['HTTP_HOST'] ?>/admin/images/connexion-admin.png" alt="Connexion à l'administration du site Internet" /></a>
<?php } ?>
</body>
</html>
- honolulu
- WRInaute impliqué

- Messages: 942
- Inscription: 8 Nov 2005
Re: session ne fonctionne plus de php4 à php5
- Code: Tout sélectionner
if(isset($_SESSION["TB_Nom_Utilisateur"]))
{
header("Location: index.php");
}
ben c'est exactement ce que ton code dit = "si la session "tb utilisateur" existe, aller à la page d'index...
- fabrice88
- WRInaute occasionnel

- Messages: 289
- Inscription: 15 Oct 2007
Re: session ne fonctionne plus de php4 à php5
oui biensur mais le probleme est que la session ne fonctionne pas avec php5.
Si tu regarde ma page index j'ai fais :
et le soucis et que
Si tu regarde ma page index j'ai fais :
- Code: Tout sélectionner
<?php if(isset($_SESSION["TB_Nom_Utilisateur"])) { ?>
j'affiche mon menu
<?php } else { ?>
// sinon je réenvoi sur la page de connexion
<a href="connexion.php"><img src="http://<?php echo $_SERVER['HTTP_HOST'] ?>/admin/images/connexion-admin.png" alt="Connexion à l'administration du site Internet" /></a>
<?php } ?>
et le soucis et que
- Code: Tout sélectionner
<?php if(isset($_SESSION["TB_Nom_Utilisateur"])) { ?>
- fabrice88
- WRInaute occasionnel

- Messages: 289
- Inscription: 15 Oct 2007
Re: session ne fonctionne plus de php4 à php5
bonjour,
je viens de testé avec un exite
Toujours le même probleme.
je viens de testé avec un exite
- Code: Tout sélectionner
// Redirection de l'utilisateur
header("Location: index.php");
exit;
Toujours le même probleme.
-

UsagiYojimbo - WRInaute accro

- Messages: 8579
- Inscription: 23 Nov 2005
Re: session ne fonctionne plus de php4 à php5
Tu aurais pas un caractère à la con (espace, saut de ligne) avant ton session_start() ?
-

gg00xiv - Nouveau WRInaute

- Messages: 43
- Inscription: 10 Juin 2010
Re: session ne fonctionne plus de php4 à php5
Fais un
- Code: Tout sélectionner
echo session_id();
- fabrice88
- WRInaute occasionnel

- Messages: 289
- Inscription: 15 Oct 2007
Re: session ne fonctionne plus de php4 à php5
en mettant l'echo j'ai une serie de caracteres qui s'affiche du genre : g52mdjv5jbjn4d4rcuuhi4a883
je viens de faire un essai sans rentrer de login ni de mot de passe. j'ai bien mes messages
mais en plus j'ai un message
je viens de faire un essai sans rentrer de login ni de mot de passe. j'ai bien mes messages
Votre nom d'utilisateur doit comporter entre 2 et 20 caractères
L'utilisation de l'underscore est autorisée
mais en plus j'ai un message
Deprecated: Function ereg() is deprecated in \connexion.php on line 18
9 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- Migration vers PHP4 à PHP5
- migration PHP4 ==> PHP5 et MYSQL 5
- Migration php4 vers php5
- fonction include : php4 à php5
- array_merge en Php4 - comment passer en php5
- Probleme apres passage de php4 vers php5
- PHP4 & PHP5 sur un même serveur
- gros bug de php4 par rapport à php5
- installer PHP5 + MBSTRING en duo avec PHP4 sur un DEDIER OVH
- Ok sous php4 mais pas sous php5
- Google Developer Day 2007 : à Paris et dans 9 autres villes - 27-05-2007
- Référencement : le problème des sessions des pages PHP - 04-08-2008
- Le référencement de pages PHP - 04-08-2008
- TouchGraph GoogleBrowser v1.0 - 06-07-2002
- Google affiche des liens vers des plans de villes - 25-09-2004
- Séminaire sur le référencement : ImiTiki - Online 2005 - 18-04-2005
- Conseils de Google pour exploiter au mieux son site web - 11-02-2008
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
