Problèlme récupération de données dans sqlserver
Bonjour,
j'ai un problème qui m'empêche d'avancer.
J'ai crée une source de donnée odbc pour sql server.
J'ai crée ma base de données
Lorsque je me connecte la connexion se fait apparemment vu que lorsque je fais le test
Code:
1 2 3 4 5 6 7 8 9
| <?php
session_start();
$connex = odbc_connect("geststockmazars","","");
// TEST DE CONNEXION A LA TABLE (enlever les /* */)
IF(!$connex)
echo "PROBLEME à la connexion<br />";
else
echo "Connexion OK"; ?> |
j'ai le message connexion ok qui s'affiche donc c'est que la connexion se fait bien.
Maintenant quand j'essaie de me connecter je passe tjs dans la boucle qui me met que mon mot de passe est mauvais. :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| if(isset($_POST) && !empty($_POST['login']) && !empty($_POST['pass']))
{
extract($_POST);
$pass=sha1($pass); // on crypte le mot de passe tapé en sha1
$con = odbc_connect("geststockmazars","",""); // on se connecte à la base de données
$sql = " SELECT id,statut FROM users WHERE login='$login' and pass='$pass'";
// on effectue la requête sql
$req = odbc_do($con, $sql);
// on teste le nombre de résultat
if(odbc_num_rows($req)>0)
{ // s'il est supérieur à 0 c'est que l'utilisateur existe
$data= odbc_fetch_array($req);
// on créé un tableau de session où on stocke les différentes informations
$_SESSION['Auth'] = array(
'login' => $login,
'pass' => $pass,
'statut' => $data['statut']);
//on teste si il est admin ou non et en fonction de cela on le redirige
if($_SESSION['Auth']['statut'] == 'admin')
{
header('Location:pageprivee.php');
}
else
{
header('Location:pagepublique.php');
}
}
else
{ // si pas de résultat c'est que les identifiants sont incorrectes
header('location:erreurlog.php');
}
} |
mon fichier auth.php si vosu le souhaitez :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
| <?php
Class Auth{
static function isLogged()
{
if(isset($_SESSION['Auth']) && isset($_SESSION['Auth']['login']) && isset($_SESSION['Auth']['pass']) )
{
extract($_SESSION['Auth']);
$con = odbc_connect("geststockmazars","","");
$sql = " SELECT id from users where login='$login' and pass='$pass'";
$req = odbc_do($con, $sql);
if(odbc_num_rows($req)>0)
{
return true;
}
else
{
return false;
}
}
else
{
return false;
}
}
static function isAdmin()
{
if(isset($_SESSION['Auth']) && isset($_SESSION['Auth']['login']) && isset($_SESSION['Auth']['pass']) )
{
extract($_SESSION['Auth']);
$con = odbc_connect("geststockmazars","","");
$sql = " SELECT statut from users where login='$login' and pass='$pass'";
$req = odbc_do($con, $sql);
if($req='admin')
{
return true;
}
else
{
return false;
}
}
else
{
return false;
}
}
}
?> |
BIen sur ma table users existe dans sql server et les champs spécifiés dan sla requête aussi.
Si vosu avez des questions n'hésitez pas.