identification de session infructueuse
bonjour, j'essai de pondre un code pour une ouverture de session, sans la partie de connexion et vérification dans ma base tous va bien mais des-que je rajoute la partie base il n'y a plus d'ouverture de session un œil pourrais t'il me dire ce que j'ai omis merci .
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
| <?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']))) {
$base = mysql_connect ('XXXXX', 'XXX', 'XXXX');
mysql_select_db ('XXXX', $base);
// on teste si une entrée de la base contient ce couple login / pass
$sql = 'SELECT count(*) FROM inscription WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass_md5="'.mysql_escape_string(md5($_POST['pass'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
mysql_free_result($req);
mysql_close();
// si on obtient une réponse, alors l'utilisateur est un membre
if ($data[0] == 1) {
session_start();
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
// si on vient du formulaire
$login = $_POST['login'];
$_SESSION['login'] = $login;
}
else {
$login = $_SESSION['login'];
}
}
}
}
if (isset($_SESSION['login'])) {
//on vérifi si la session est en cours.
$_SESSION['login'] == 'session_is_registered';
}
else {
header('location: test_index.php');
}
?> |
avec le code ci dessus lorsque je soumet mon formulaire il se passe un instant et je revient sur
Code:
header('location: test_index.php');
alors que le login et le pass sont bon et bien présent dans ma base.
merci par avance
cedcyr
d'autre yeux me seront utile
bonsoir, après plein de tentatives infructueuses j'ai repris mon code qui ne marche pas mieux car maintenant il reste sur une page blanche !
comme me la suggérer papajocker j'ai écris mon code dans une page a part.
mon plan donne ceci je par d'une page test_index ou se trouve mon formulaire qui post vers une page session ou se trouve mon code d'ouverture, qui si c'est ok renvoie vers une page test_index1 (page de membre) ou si ce n'est pas bon renvoie vers test_index (page de départ).
pour le moment quand je post mon formulaire il part bien vers ma page session et hop la je reste sur une page blanche (session.php). si vous pouvez y jeter un œil merci d'avance.
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
| <?php
session_start();
unset( $_SESSION['login'] );
// 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']))) {
$sql = 'SELECT count(*) FROM inscription WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass_md5="'.mysql_escape_string(md5($_POST['pass'])).'"';
$base = mysql_connect ('localhost', 'attelage_chr', 'cedcyr1084');
mysql_select_db ('attelage_accesattelage', $base);
$resultat = mysql_query($sql);
$data = mysql_fetch_array($resultat);
$login = $data['login'];
}
// si on obtient une réponse, alors l'utilisateur est un membre
if ($_POST['login'] = $login) {
$login = $_SESSION['login'];
header('location:test_index1.php');
exit;
}
else {
header('location:test_index.php');
}
}
?> |
qu'est ce qui ne plait pas a php dans ce code je ne vois pas ?
au plaisir de vous lire
cedcyr