authentification sur bdd via session impossible

meta
Invité n'ayant pas de compte PHPfrance

20 juin 2005, 21:43

lu tlm,

voila le preobleme, je fais une authentification via sessions en remplissant un formulaire, si le pass/login est correct alors le user peut aller vers index.php...

sur index.php, j arrive bien afficher mes variables de sessions login/pass, mais arrive au moment de la connexion a la base il n accepte' pas et me dit :
 Votre login est root et votre mot de passe est .
Warning: mysql_connect(): Accès refusé pour l'utilisateur: ''root''@'@localhost' (mot de passe: OUI) in c:\program files\easyphp1-8\www\datas01\index.php on line 120
error connect
j ai bien mis un session_start en haut et mes variables sont bien chargées a priori car elles s affichent bien...

si quelqu un aurait une idée merci d avance de l aide :)

Invité
Invité n'ayant pas de compte PHPfrance

20 juin 2005, 21:44

et voila le bout de code d index.php :
echo 'Votre login est '.$_SESSION['pseudo'].' et votre mot de passe est '.$_SESSION['password'].'.';

if (isset($_SESSION['pseudo']) && isset($_SESSION['password'])) {



$Connection=mysql_connect("localhost", "'" . $_SESSION['pseudo'] . "'" ,"'" . $_SESSION['password'] . "'") or die ("error connect");


$odb=mysql_select_db("reglages",$Connection) or die ("Base reglages non trouvée");

Mammouth du PHP | 19672 Messages

20 juin 2005, 21:58

Essaye comme ça :
<?php
$pseudo = isset($_SESSION['PSEUDO'])?$_SESSION['PSEUDO']:"Inconnu";
$mdp = isset($_SESSION['password'])?$_SESSION['password']:"Inconnu";
echo "Votre login est ".$pseudo." et votre mot de passe est ".$mdp;

if ($pseudo != "Inconnu" && $mdp != "Inconnu")
{
    $Connection = mysql_connect("localhost", $pseudo , $mdp) or die ("error connect");
    $odb = mysql_select_db("reglages",$Connection) or die ("Base reglages non trouvée");
}
?>
Ce n'est pas une requête SQL, tu n'as pas besoin de ' ' pour encadrer les pseudo et mode de passe.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Invité
Invité n'ayant pas de compte PHPfrance

20 juin 2005, 22:10

arf nan je me prends ca :
Votre login est Inconnu et votre mot de passe est Inconnu
Notice: Undefined index: pseudo in c:\program files\easyphp1-8\www\reglages01\admin\index.php on line 117

Notice: Undefined index: password in c:\program files\easyphp1-8\www\reglages01\admin\index.php on line 117
en fait depuis le post precedent j ai vidé ma session, et depuis mon login/pass ne s affiche meme pu.

dans ma page de validation que faut il mettre pour envoyer les variables a index.php ?? actuellement voila le code de connexion.php qui permet d aller sur index.php :
<?
session_start();

$pseudo=$_POST['pseudo'];
$password=$_POST['password'];

//connection et authentification
$Connection=mysql_connect("localhost","root","") or die ("error connect");

//Connection à la base reglages
$odb=mysql_select_db("mysql",$Connection) or die ("Base reglages non trouvée");


$query = "SELECT * FROM user WHERE User ='$pseudo' AND password='$password' ";

$result = mysql_query($query); //execute la requete
$row = mysql_fetch_array($result);

if (empty($row)) // si $rowest vide, c'est que la combinaison user/ password est fausse
{
  echo "erreur d'auth";
}
else 
{
    echo "ok"  ;
    echo "<a href=\"index.php\">Créer</a>";
   
}
?>
et si je tente de mettre un $pseudo=$_SESSION['pseudo'];$password=$_SESSION['password']; , au dessus du lien href, bah il m dit qu il connait pas. :(

si quelqu un pourrait filer un coup d pince, merci d avance :=)

Mammouth du PHP | 19672 Messages

20 juin 2005, 22:18

Comment initialises-tu tes variables de session ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

meta
Invité n'ayant pas de compte PHPfrance

20 juin 2005, 22:20

re,

donc la j arrive bien a afficher mes variables en mettant ceci dans conexion.php :
$_SESSION['pseudo'] = $row['User'];
	$_SESSION['password'] = $row['password'];
donc la avec ton script cyrano, jai tjs l erreur :( :

Votre login est root et votre mot de passe est .
Warning: mysql_connect(): Accès refusé pour l'utilisateur: ''root''@'@localhost' (mot de passe: OUI) in c:\program files\easyphp1-8\www\reglages01\admin\index.php on line 61
error connect
je sais pas d ou ca peut venir :(

Mammouth du PHP | 19672 Messages

20 juin 2005, 22:28

juste au cas où, vas-y sans mot de passe et modifie le script pour que ça fasse la connexion sans mot de passe
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Invité
Invité n'ayant pas de compte PHPfrance

20 juin 2005, 22:31

ah c est good, ca m a l air bon la j avais omis une accolade sur ton script la ca passe. merci BEAUCOUP :) a ++

Mammouth du PHP | 19672 Messages

20 juin 2005, 22:37

Je peux mettre le sujet [Résolu] :?:

Tu peux t'inscrire en fait, pour les prochains messages, tu pourras le faire toi-même et quand il y a des réponses, tu es prévenu par courriel tout de suite. Et ça coute pas un rond ;)
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: