msatter
Messages postés8Date d'inscriptionmercredi 11 avril 2007StatutMembreDernière intervention10 mai 2010
-
25 juin 2008 à 14:50
msatter
Messages postés8Date d'inscriptionmercredi 11 avril 2007StatutMembreDernière intervention10 mai 2010
-
25 juin 2008 à 17:17
Bonjour,
j'ai un probleme qui ne s'est averer que quand je suis passer de esyphp2.01b à xampp .
le probleme est que mon cookie refuse de se "unserialiser"
code:
serialisation:
<?php
include("config.php");
if((isset($_POST['username']))AND(isset($_POST['password'])))
{
if((empty($_POST['username']))||(empty($_POST['password'])))
{
die ("nom d'utilisateur ou mot de passe incorrect");
}
$username=$_POST['username'];
$password=md5($_POST['password']);
mysql_connect($Serveur,$Utilisateur,$MotDePasse)or die ("erreur de connexion"); // connexion mysql
mysql_select_db($Base) or die ("erreur dans la selection de la base");
$sql " SELECT * FROM site_user WHERE login '".$username."' " ;
// on envoie la requête
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());
$data = mysql_fetch_array($req);
if(($data['pass']==$password)&&($data['login']==$username))
{
$v = serialize($data);
// creation de la commande de cookie
setcookie($cookie_user,$v,time()+$dure_cookie,"/");
// redirige
header("location:index.php");
}
else
{
echo "nom d'utilisateur ou mot de passe incorrect";
}
}
else
{
echo "nom d'utilisateur ou mot de passe incorrect";
}
?>
------------------------------------------------------
code unserialise:
<?php
include("config.php");
if (isset ($_COOKIE[$cookie_user]))
{//test test si pas admin
header("location:login.html");
}
?>
-------------------------------------------------------------
quand j'affiche var_dump(($_COOKIE[$cookie_user]));
j'ai:
a:10:{i:0;s:1:"1";s:7:"id_user";s:1:"1";i:1;s:5:";admin";s:5:"login";s:5:"admin";i:2;s:32:"1a1dc91c907325c69271ddf0c944bc72";s:4:"pass";s:32:"1a1dc91c907325c69271ddf0c944bc72";i:3;s:6:"aymane";s:3:"nom";s:6:"aymane";i:4;s:1:"1";s:5:"admin";s:1:"1";}
probleme:
il y a des "" qui se sont ajouter lors du setcookie je crois ce qui fait que
var_dump(unserialize($_COOKIE[$cookie_user])); retourne false.
j'ai essayer de remplacer les "" ajoutés par des "" grace a ereg_replace() ,str_replace()... mais je n'ai trouver aucun moyen de l'exprimer en tant qu'expression régulière que faire
je crois que je suis pas loin de l'explosion