session qui marche chez moi, mais pas chez free??

session qui marche chez moi, mais pas chez free?? - Programmation

Marsh Posté le 27-02-2002 à 23:08:31    

Slt à tous,
 
alors chez moi, pas de problèmes, ça roule impec, avec les mêmes settings que Free dans le php.ini. (J'ai comparé les deux phpinfo();)
 
mais chez free, quand une session doit commencer avec le login d'un membre, j'ai ça:
 
Fatal error: open(O_RDWR) failed for session file. The error is No such file or directory (2). Did you forget to create the session directory in your site ? in index.php on line 97
 
Fatal error: open(O_RDWR) failed for session file. The error is No such file or directory (2). Did you forget to create the session directory in your site ? in your script on line 0
 
Voici le code de index.php, avec la ligne 97 en gras:
 

Citation :


<?
include("conf.php" );
require("membres/lib.php" );
 
$explode_rub = explode("/",$rub);
$zone = $explode_rub[0];
$zone_mem = $explode_rub[1];
$zone_adm = $explode_rub[2];
 
if($update_cookie=="oui" )
{
if(!$id_membre)
{
$query = "SELECT id,pref1,pref2,pref3,pref4,cookie FROM membres where pseudo='$pseudo' and motdepasse='$passe_membre'";
$result = mysql_query("$query",$connexion);
$id_membre = @mysql_result($result,0,"id" );
$cookie = @mysql_result($result,0,"cookie" );
$pref1 = @mysql_result($result,0,"pref1" );
$pref2 = @mysql_result($result,0,"pref2" );
$pref3 = @mysql_result($result,0,"pref3" );
$pref4 = @mysql_result($result,0,"pref4" );
}
if($cookie=="oui" )
{
$pseudo_membre = $pseudo;
$comon = $pseudo_membre.";";
$comon .= $id_membre.";";
setcookie("grebas",$comon,time()+999999999);
}
elseif($cookie=="non" )
{
setcookie("grebas" );
}
 
if(!$pref1) { $pref1 = n; }
if(!$pref2) { $pref2 = n; }
if(!$pref3) { $pref3 = n; }
if(!$pref4) { $pref4 = n; }
 
$comon = "$pref1;$pref2;$pref3;$pref4;";
setcookie("grebas_prefs",$comon,time()+999999999
 
 
 
);
}
 
if($HTTP_TRACK_VARS[login_pseudo_membre])
{
$query = "SELECT id,ban FROM membres where pseudo='$login_pseudo_membre' and motdepasse='$passe_membre'";
$result = mysql_query("$query",$connexion);
$lignes = mysql_num_rows($result);
 
$ban = @mysql_result($result,0,"ban" );
$date = date("Y-m-d" );
 
if($ban>$date)
{
$interdire = oui;
$interdire_identification = oui;
$dato = explode("-",$ban);
$day = $dato[2];
$month = $dato[1];
$year = $dato[0];
$duree = mktime(0,0,0,$month,$day,$year);
$comon = "$duree;";
setcookie("grebas_ban",$comon,time()+$duree);
 
if($ban=="2099-12-31" )
{
$erreur = "Vous avez été banni définitivement de ce site.<br>Vous ne pourrez plus vous reconnecter en tant que membre.";
}
else
{
$erreur = "Vous avez été banni du site.<br>Vous pourrez vous reconnecter en tant que membre le ".$day."-".$month."-".$year.".";
}
}
elseif($cookie_pseudo=="" && $lignes=="0" )
{
$interdire_identification = oui;
$erreur = "Erreur dans votre authentification. Etes vous inscris sur le site?
<br>Si oui, vous vous êtes trompés de pseudo ou de mot de passe.
<br>Sinon, allez vite vous inscrire en cliquant <a href=\"index.php?rub=membres/inscription\">ici
 
 
 
</a>.";
}
else
{
if($cookie_pseudo!="" )
{
$pseudo_membre = $cookie_pseudo;
}
elseif($login_pseudo_membre!="" )
{
$pseudo_membre = $login_pseudo_membre;
}
session_start();
 
session_register('pseudo_membre';);[
 
/g]
 
}
}
if($zone==membres)
{
session_start();
 
if(!session_is_registered('pseudo_membre';))
 
 
    {
header("Location: index.php?rub=erreur" );
Exit;
    }
$pseudo_membre = $HTTP_SESSION_VARS[pseudo_membre];
}
include "header.inc.php";
if(!isset($rub))
{
include "news.php";
}
else
{
if(file_exists("$rub.htm" ))
{
include "$rub.htm";
}
elseif(file_exists("$rub.php" ))
{
include "$rub.php";
}
else
{
echo "<font face='Verdana' size='2'><b>ATTENTION</b> : La page $rub est introuvable sur notre serveur !
<bR>Veuillez contacter <a href='mailto:haazheel@net-up.com'>Le webmaster</a></font>";
}
}
include "footer.inc.php";
?>


 
Donc voilà. En fait, pour résumer, quand le index.php détecte que la variable [g]login_pseudo_membre est définie avec son mot de passe, il vérifie que le user est pas banni. Si il n'est pas banni, il regarde si il peut récupérer la valeur dans un cookie. Sinon, il reprend la valeur de login_pseudo_membre pour la mettre dans la session.
 
Ensuite, si on entre dans la zone des membres, il vérifie que la session est bien enregistrée et autorise l'affichage.
 
J'ai essayé le $HTTP_TRACK_VARS[login_pseudo_membre] parce que $login_pseudo_membre marchait pas non plus.
 
Help!!
 
EDIT: l'affichage en gras merdouille pas mal là :(

 

[jfdsdjhfuetppo]--Message édité par haazheel--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 27-02-2002 à 23:08:31   

Reply

Marsh Posté le 28-02-2002 à 21:04:08    

up!!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed