Redirection qui ne devrait pas exister !
Ozby
Messages postés
8
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour, bonsoir,
J'ai une page "connexion.php" avec un form qui agit sur une page "connected.php", qui contient un script de connexion, que je vous mets en dessous. Cependant lorsque je clique sur "me connecter", c'est comme si je n'étais pas renvoyé à "connected.php", je retourne simplement sur l'index du site. Pourtant il n'y a aucune redirection dans mon script !
Voici le code:
Merci de m'aider !
J'ai une page "connexion.php" avec un form qui agit sur une page "connected.php", qui contient un script de connexion, que je vous mets en dessous. Cependant lorsque je clique sur "me connecter", c'est comme si je n'étais pas renvoyé à "connected.php", je retourne simplement sur l'index du site. Pourtant il n'y a aucune redirection dans mon script !
Voici le code:
<?php
session_start();
// On se connecte à la BDD
mysql_connect("localhost", "root", "");
mysql_select_db("mabdd");
// Si les champs ne sont pas vides
if(!empty($_POST['pseudo'])) AND !empty($_POST['pass'])
{
// On définit les variables
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
$pass = sha1($_POST['pass']); // On crypte le pass
$pass = mysql_real_escape_string(htmlspecialchars($pass));
$nbre = mysql_query("SELECT COUNT(*) AS exist FROM membres WHERE pseudo='$pseudo'"); // Si le pseudo existe
$donnees = mysql_fetch_array($nbre);
if($donnees['exist'] != 0) // Si le pseudo existe
{
// On fait un SELECT de l'utilisateur
$quete = mysql_query("SELECT * FROM membres WHERE pseudo='$pseudo'");
$infos = mysql_fetch_array($quete);
if($pass == $infos['pass']) // Si le couple pseudo / mdp est bon
{
// On crée la session
$_SESSION['pseudo'] = $_POST['pseudo'];
setcookie('pseudo', $_SESSION['pseudo'], time() + 365*24*3600, null, null, false, true);
echo 'Vous allez être redirigé, si ce n\'est pas le cas, <a href="index.php" title="accueil">cliquez ici</a>';
}
else
{
echo 'Les informations saisies sont incorrectes. <a href="connexion.php">Retourner à la page de connexion.</a>';
}
}
else
{
echo 'Ce pseudo n\'existe pas. <a href="connexion.php">Retourner à la page de connexion.</a>';
}
}
else
{
echo 'Veuillez remplir tous les champs ! <a href="connexion.php">Retourner à la page de connexion.</a>';
}
?>
Merci de m'aider !
A voir également:
- Redirection qui ne devrait pas exister !
- Un périphérique qui n'existe pas a été spécifié - Forum BIOS
- Avertissement de redirection ✓ - Forum MacOS
- Datedif excel n'existe pas ✓ - Forum Excel
- Avertissement de redirection Google image - Forum Réseaux sociaux
- Souci avec la fonction DATEDIF ✓ - Forum Excel
12 réponses
Qu'est-ce qui te permet d'affirmer qu'il y a une redirection ? Peut-être que tu ne vas jamais dans connected.php. Peut-être que connexion.php n'envoie pas vers connected.php. Peux-tu montrer le code de connexion.php ?
Voici connexion.php, un simple formulaire
<?php include "haut.php"; ?>
<form method="post" class="form_inscription" action="connected.php">
<p>
<label for="pseudo">
Pseudo:
</label>
<input type="text" name="pseudo"/>
</p>
<p>
<label for="pass">
Mot de passe:
</label>
<input type="password" name="pass"/>
</p>
<input type="submit" value="Connexion" style="width: 140px; float: right; margin-right: 7px; text-align: center;"/>
</form>
<?php include "bas.php"; ?>
Effectivement, rien à redire au niveau de connexion.php
Par contre, quand j'essaye ton code chez moi, je n'ai aucune redirection mais un beau message d'erreur à cause d'un parenthèse mal placée dans :
Par contre, quand j'essaye ton code chez moi, je n'ai aucune redirection mais un beau message d'erreur à cause d'un parenthèse mal placée dans :
if(!empty($_POST['pseudo'])) AND !empty($_POST['pass'])Il fallait écrire :
if(!empty($_POST['pseudo']) AND !empty($_POST['pass']))
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Non, car je n'y crois pas.
À ta place, je parsèmerais le code de connected.php de die("coucou1");, die("coucou2"); ... pour voir jusqu'où ça va et où ça ne va plus. Tu coinceras bien la zone qui a un problème comme ça.
Au fait, vois-tu bien l'affichage fait par "haut.php" et "bas.php" ? Car le fait que toi tu n'ais pas eu d'affichage d'erreur me laisse penser que ton script n'est pas interpreté par php.
Y a-t-il une "redirection" aussi quand tu lances directement connected.php (sans l'appeler via le formulaire) ?
À ta place, je parsèmerais le code de connected.php de die("coucou1");, die("coucou2"); ... pour voir jusqu'où ça va et où ça ne va plus. Tu coinceras bien la zone qui a un problème comme ça.
Au fait, vois-tu bien l'affichage fait par "haut.php" et "bas.php" ? Car le fait que toi tu n'ais pas eu d'affichage d'erreur me laisse penser que ton script n'est pas interpreté par php.
Y a-t-il une "redirection" aussi quand tu lances directement connected.php (sans l'appeler via le formulaire) ?
Bonjour le père !
Alors oui quand je vais directement sur connected.php sans passer par le formulaire c'est comme si j'allais sur index.php !
Ensuite, oui je vois bien haut.php et bas.php, aucun soucis.
En mettant des die() de partout aucun ne s'affiche, pas même celui touttau début du code. Il semblerait en effet que la page ne soit pas interprétée par php. J'ai donc mis un texte en html avant le script php, mais idem, je me retrouve direct sur l'index sans avoir la page connected.php avec mon texte...
EDIT: Le fait que je n'ai pas eu le message d'erreur et toi si m'intrigue. J'essaye de voir d'où ça peut venir.
Alors oui quand je vais directement sur connected.php sans passer par le formulaire c'est comme si j'allais sur index.php !
Ensuite, oui je vois bien haut.php et bas.php, aucun soucis.
En mettant des die() de partout aucun ne s'affiche, pas même celui touttau début du code. Il semblerait en effet que la page ne soit pas interprétée par php. J'ai donc mis un texte en html avant le script php, mais idem, je me retrouve direct sur l'index sans avoir la page connected.php avec mon texte...
EDIT: Le fait que je n'ai pas eu le message d'erreur et toi si m'intrigue. J'essaye de voir d'où ça peut venir.
Fais-tu tes essais en local ou en ligne?
N'y a-t-il pas un fichier .htaccess qui te jouerait des tours ?
N'y a-t-il pas un fichier .htaccess qui te jouerait des tours ?
N'as tu pas deux copie de tes fichiers, et tu ne travailles pas sur le bon exemplaire ?
Dans ton formulaire connexion.php, fais deux modifs l'une après l'autre pour mieux voir.
1 - Change le VALUE de ton bouton submit et vérifie que tu vois bien le libellé du bouton changer
2 - change le "action" du post pour une url quelconque (une inexistante, ou celle de google par exemple) pour voir ce qui se passe.
Dans ton formulaire connexion.php, fais deux modifs l'une après l'autre pour mieux voir.
1 - Change le VALUE de ton bouton submit et vérifie que tu vois bien le libellé du bouton changer
2 - change le "action" du post pour une url quelconque (une inexistante, ou celle de google par exemple) pour voir ce qui se passe.