Erreur PHP Redirection
DAG
-
Langage -
Langage -
Bonjour,
J'ai écris le programme suivant :
Ce programme récupère les info d'une page de login html. A partir de là, il vérifie que les infos entrées par l'utilisateur sont bonnes.
J'ai l'erreur suivante que je ne comprend pas :
Warning: Cannot modify header information - headers already sent by (output started at /var/www/Application/bdd/connexion_bdd.php:12) in /var/www/Application/login.php on line 25
Quelqu'un aurait-il la solution ?
Je voudrais bien n'avoir qu'un fichier ou j'ai ma fonction de connexion, Et je voudrais rediriger l'utilisateur vers une page...
Rien de bien compliqué !
Merci d'avance
J'ai écris le programme suivant :
<?php
include 'bdd/connexion_bdd.php';
if(isset($_POST) && !empty($_POST['login']) && !empty($_POST['pass']))
{
extract($_POST);
$sql = "SELECT pwd FROM tbl_user where login=\"$login\";";
$req = mysql_query($sql) or die("Erreur SQL !<br>" . $sql . "<br>" . mysql_error());
$data = mysql_fetch_assoc($req);
if($data['pwd'] != $pass)
{
echo "<p>Mauvais login / password. Merci de recommencer</p>";
include('index.html');
exit;
}
else
{
session_start();
$_SESSION['login'] = $login;
header('Location: /Application/accueil/index.php');
}
}
else
{
echo "<p>Vous avez oublié de remplir un champ.</p>";
include('index.html');
exit;
}
?>
Ce programme récupère les info d'une page de login html. A partir de là, il vérifie que les infos entrées par l'utilisateur sont bonnes.
J'ai l'erreur suivante que je ne comprend pas :
Warning: Cannot modify header information - headers already sent by (output started at /var/www/Application/bdd/connexion_bdd.php:12) in /var/www/Application/login.php on line 25
Quelqu'un aurait-il la solution ?
Je voudrais bien n'avoir qu'un fichier ou j'ai ma fonction de connexion, Et je voudrais rediriger l'utilisateur vers une page...
Rien de bien compliqué !
Merci d'avance
A voir également:
- Erreur PHP Redirection
- Expert php pinterest - Télécharger - Langages
- Erreur 0x80070643 - Accueil - Windows
- Erreur 4201 france tv ✓ - Forum Réseaux sociaux
- Erreur 4101 france tv - Forum Lecteurs et supports vidéo
- J'aime par erreur facebook notification - Forum Facebook
7 réponses
Et bien je pense (j'ai eu la même erreur aussi) qu'il faut que tu enlève un header() dans un de tes fichiers php inclus.
C'est pas bon d'avoir plusieurs header().
C'est pas bon d'avoir plusieurs header().
Dans ce fichier là je n'est qu'un header ... Je ne comprend pas ... J'ai un fichier inclus ou j'ai la config de la connxion à ma base de données. Et si l'utilisateur ne s'est pas bien logé je le redirige via le header vers une autre page.
C'est bizarre, si je dois virer le header je ne sais pas comment je vais faire pour rediriger les utilisateurs... Et si je dois virer mon include, il va falloir que je mette la conf de la connexion dans chaque fichier php ?
C'est bizarre, si je dois virer le header je ne sais pas comment je vais faire pour rediriger les utilisateurs... Et si je dois virer mon include, il va falloir que je mette la conf de la connexion dans chaque fichier php ?
Ah voilà moi aussi j'ai eu le même problème !
Si tu veux rediriger tes utilisateurs (je fais comme ça aussi maintenant), tu remplaces ton code par celui là ! tu verras ca marchera !
<?php
include 'bdd/connexion_bdd.php';
if(isset($_POST) && !empty($_POST['login']) && !empty($_POST['pass']))
{
extract($_POST);
$sql = "SELECT pwd FROM tbl_user where login=\"$login\";";
$req = mysql_query($sql) or die("Erreur SQL !<br>" . $sql . "<br>" . mysql_error());
$data = mysql_fetch_assoc($req);
if($data['pwd'] != $pass)
{
echo "<p>Mauvais login / password. Merci de recommencer</p>";
include('index.html');
exit;
}
else
{
session_start();
$_SESSION['login'] = $login;
echo "Redirection en cours...<meta http-equiv=\"refresh\" content=\"0;URL=/Application/accueil/index.php\">";
}
}
else
{
echo "<p>Vous avez oublié de remplir un champ.</p>";
include('index.html');
exit;
}
?>
PS : le URL=/Application/accueil/index.php\">"; peut etre que tu dois mettre http:// (la vraie URL)
Voilà tu verras moi aussi j'ai le meme probleme que toi j'ai resolu ca par le html
Si tu veux rediriger tes utilisateurs (je fais comme ça aussi maintenant), tu remplaces ton code par celui là ! tu verras ca marchera !
<?php
include 'bdd/connexion_bdd.php';
if(isset($_POST) && !empty($_POST['login']) && !empty($_POST['pass']))
{
extract($_POST);
$sql = "SELECT pwd FROM tbl_user where login=\"$login\";";
$req = mysql_query($sql) or die("Erreur SQL !<br>" . $sql . "<br>" . mysql_error());
$data = mysql_fetch_assoc($req);
if($data['pwd'] != $pass)
{
echo "<p>Mauvais login / password. Merci de recommencer</p>";
include('index.html');
exit;
}
else
{
session_start();
$_SESSION['login'] = $login;
echo "Redirection en cours...<meta http-equiv=\"refresh\" content=\"0;URL=/Application/accueil/index.php\">";
}
}
else
{
echo "<p>Vous avez oublié de remplir un champ.</p>";
include('index.html');
exit;
}
?>
PS : le URL=/Application/accueil/index.php\">"; peut etre que tu dois mettre http:// (la vraie URL)
Voilà tu verras moi aussi j'ai le meme probleme que toi j'ai resolu ca par le html
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question