espace de connexion pour les membre avec php_oracle
Bonjour,
Je veux créer un espace de connexion pour les membres déja inscrit cad qui s'y trouvent dans une base de données ORACLE , quant je fais un test de ce code je reçois toujours le message "Compte non reconnu" même si l'identifiant et le mot de passe sont les 2 correctes.
j'ai lu le code pas mal de foi mais en vain j'ai pas pu savoir ou se trouve l'erreur :cry::cry:
pourriez vous m'aidez?
Voila le code de la page: index.php
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 56
| <?php
// on teste si le visiteur a soumis le formulaire de connexion
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion')
{
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])))
{
$connect = ocilogon('SYSMAN','mypass','ORCL');
$sql = "SELECT * FROM users WHERE identifiant LIKE '".$_POST['login']."' AND pw LIKE '".$_POST['pass']."'";
$sql_statement = ociparse($connect,$sql);
ociexecute($sql_statement, OCI_DEFAULT);
ocicommit($connect);
$row=oci_fetch_array($sql_statement);
ocifreestatement($sql_statement);
ocilogoff ($connect);
if ($row[0] == 1)
{
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: membre.php');
exit();
}
// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login, soit dans son mot de passe
elseif ($row[0] == 0)
{
$erreur = 'Compte non reconnu.';
}
else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>
<html>
<head>
<title>Accueil</title>
</head>
<body>
Connexion à l'espace membre :<br />
<form action="index.php" method="post">
Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
Mot de passe : <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br />
<input type="submit" name="connexion" value="Connexion">
</form>
<?php
if (isset($erreur)) echo '<br /><br />',$erreur;
?>
</body>
</html> |
et le code de la page membre.php
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 56 57 58 59
| <?php
include("top.php");
// on teste si le visiteur a soumis le formulaire de connexion
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion')
{
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])))
{
$connect = ocilogon('SYSMAN','mypass','ORCL');
// on teste si une entrée de la base contient ce couple login / pass
$sql = "SELECT * FROM users WHERE identifiant LIKE '".$_POST['login']."' AND pw LIKE '".$_POST['pass']."'";
$sql_statement = ociparse($connect,$sql);
ociexecute($sql_statement, OCI_DEFAULT);
ocicommit($connect);
$row=oci_fetch_array($sql_statement);
ocifreestatement($sql_statement);
ocilogoff ($connect);
if ($row[0] == 1)
{
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: membre.php');
exit();
}
// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login, soit dans son mot de passe
elseif ($row[0] == 0)
{
$erreur = 'Compte non reconnu.';
}
else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>
<html>
<head>
<title>Accueil</title>
</head>
<body>
Connexion à l'espace membre :<br />
<form action="index.php" method="post">
Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
Mot de passe : <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br />
<input type="submit" name="connexion" value="Connexion">
</form>
<?php
if (isset($erreur)) echo '<br /><br />',$erreur;
?>
</body>
</html> |
Merci d'avance