Je viens de créer un formulaire de connexion pour un site web que j'essaie de créer et j'aimerai que lorsque l'utilisateur clique sur le bouton "Login" ça le redirige vers une autre page que j'ai créée appelée "page_de_profil.html". J'ai cru comprendre qu'il fallait utiliser la balise header mais lorsque je met le chemin vers ma page html j'ai un message d'erreur j'imagine que j'utilise mal la balise header.. peut-être même qu'il ne faut pas utiliser cette balise. Bref merci pour votre aide.
Mon index en php :
<?php session_start();
?>
<!DOCTYPE html>
<html>
<head>
<title>Titrsbis</title>
</head>
<body>
<?php
if (isset($_SESSION['email']) && (isset($_SESSION['date'])))
{
?>
<p> Votre email : <?= $_SESSION['email']; ?> </p>
<p> Date de création : <?= $_SESSION['date']; ?></p>
<?php
} else {
echo "Veuillez vous connecter à votre compte";
}
?>
<?php
include 'database.php';
global $db;
?>
<h1>Login</h1>
<form method="post">
<input type="email" name="email2" id="email2" placeholder="Votre email" required ><br/>
<input type="password" name="password3" id="password3" placeholder="Votre mot de passe" required ><br/>
<input type="submit" name="Se_connecter2" id="Se_connecter2" value="Login">
</form>
<?php
include 'formulaireconnexion.php';
?>
<h1>Singnin</h1>
<form method="post">
<input type="email" name="email" id="email" placeholder="Votre email" required ><br/>
<input type="password" name="password" id="password" placeholder="Votre mot de passe" required ><br/>
<input type="password" name="password2" id="password2" placeholder="Confirmez votre mot de passe" required ><br/>
<input type="submit" name="Se_connecter" id="Se_connecter" value="Singnin">
</form>
<?php
include 'formulaireinscription.php';
?>
</body>
</html>
le formulaire de connexion tjrs en php :
<?php
if (isset($_POST['Se_connecter2']))
{
$password3 = $_POST['password3'];
$email2 = $_POST['email2'];
if(!empty($email2) && !empty($password3))
{
$q = $db->prepare("SELECT * FROM utilisateurs WHERE email = :email");
$q->execute(['email' => $email2]);
$result = $q-> fetch();
if ($result == true) {
$hashpassword = $result['password'];
if (password_verify($password3, $result['password'])) {
$_SESSION['email'] = $result['email'];
$_SESSION['date'] = $result['date'];
}
else{
echo "le mdp n'est pas bon";
}
}
else{
echo "Le compte portant l'email " . $email2 . " n'existe pas" ;
}
}
else{
echo "Veuillez completer l'ensemble des champs";
}
}
?>
(j'ai enlevé ma balise header étant donné qu'elle ne marchait pas).
- Edité par MathisRobin 1 décembre 2020 à 16:59:09
<?php
if (isset($_POST['Se_connecter2']))
{
$password3 = $_POST['password3'];
$email2 = $_POST['email2'];
if(!empty($email2) && !empty($password3))
{
$q = $db->prepare("SELECT * FROM utilisateurs WHERE email = :email");
$q->execute(['email' => $email2]);
$result = $q-> fetch();
if ($result == true) {
$hashpassword = $result['password'];
if (password_verify($password3, $result['password'])) {
header('Location: file:///C:/Users/ROBIN%20FAMILY/Desktop/site/html/page_de_profil.html');
$_SESSION['email'] = $result['email'];
$_SESSION['date'] = $result['date'];
}
else{
echo "le mdp n'est pas bon";
}
}
else{
echo "Le compte portant l'email " . $email2 . " n'existe pas" ;
}
}
else{
echo "Veuillez completer l'ensemble des champs";
}
}
?>
et ça me met :
Ce site est inaccessible
Il se peut que la page Web à l'adresse http://localhost/ soit temporairement inaccessible ou qu'elle ait été déplacée de façon permanente à une autre adresse Web.
ERR_UNSAFE_REDIRECT
- Edité par MathisRobin 1 décembre 2020 à 16:51:24
C'est bon j'ai réussi en changeant le nom du fichier d'arrivé..va savoir
- Edité par MathisRobin 2 décembre 2020 à 14:12:42
Probleme de redirection d'un formulaire php
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Il n'y a pas de question idiote, seulement une réponse idiote
Il n'y a pas de question idiote, seulement une réponse idiote
Pas d'aide concernant le code par MP, le forum est là pour ça :)
Il n'y a pas de question idiote, seulement une réponse idiote