Probleme erreur php
Résolu
maxime
-
maxime -
maxime -
Bonjour,
je suis en train de faire un site web
je veux le proteger par un unique identifiant et un mot de passe.
voici ce que j'ai mis dans ma page d'accueil
<h1><?php include('login.php3'); ?></h1>
jusque là ca va.
le fichier login.php3 contient :
<?php
if ($Message == "Invalide")
{ print ("<B><CENTER><FONT COLOR=RED>
</FONT></CENTER></B>\n");
}
print ("<FORM ACTION=\"Log.php3\" METHOD=POST>\n");
print ("Login : <INPUT TYPE=TEXT NAME=Utilisateur SIZE=10><BR>\n");
print ("Password : <INPUT TYPE=PASSWORD NAME=Mdp SIZE=7><BR>\n");
print ("<INPUT TYPE=SUBMIT NAME=SUBMIT VALUE=\"Go\">\n");
?>
Jusque la ca marche le formulaire apparait et je peux le remplir le problème et lors de la vérification dans le fichier log.php3, ce dernier contient :
<?php
if (($Utilisateur == "maxime") && ($Mdp == "max"))
{ header ("Location: index.php3");
exit;
}
else
{ header ("Location: login.php3?Message=Invalide");
exit;
}
?>
Lorsque je suis suis sur le site internet déja en ligne, et que je rentre les bons ou les mauvais identifiants, une page d'erreur s'ouvre.
il doit avoir un probleme dans le fichier log.php3 mais je ne trouve pas.
Je vous serais trés reconnaissant de me trouver et de me reparer l'erreur.
D'avance merci
Maxime
je suis en train de faire un site web
je veux le proteger par un unique identifiant et un mot de passe.
voici ce que j'ai mis dans ma page d'accueil
<h1><?php include('login.php3'); ?></h1>
jusque là ca va.
le fichier login.php3 contient :
<?php
if ($Message == "Invalide")
{ print ("<B><CENTER><FONT COLOR=RED>
</FONT></CENTER></B>\n");
}
print ("<FORM ACTION=\"Log.php3\" METHOD=POST>\n");
print ("Login : <INPUT TYPE=TEXT NAME=Utilisateur SIZE=10><BR>\n");
print ("Password : <INPUT TYPE=PASSWORD NAME=Mdp SIZE=7><BR>\n");
print ("<INPUT TYPE=SUBMIT NAME=SUBMIT VALUE=\"Go\">\n");
?>
Jusque la ca marche le formulaire apparait et je peux le remplir le problème et lors de la vérification dans le fichier log.php3, ce dernier contient :
<?php
if (($Utilisateur == "maxime") && ($Mdp == "max"))
{ header ("Location: index.php3");
exit;
}
else
{ header ("Location: login.php3?Message=Invalide");
exit;
}
?>
Lorsque je suis suis sur le site internet déja en ligne, et que je rentre les bons ou les mauvais identifiants, une page d'erreur s'ouvre.
il doit avoir un probleme dans le fichier log.php3 mais je ne trouve pas.
Je vous serais trés reconnaissant de me trouver et de me reparer l'erreur.
D'avance merci
Maxime
A voir également:
- Probleme erreur php
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Expert php pinterest - Télécharger - Langages
- J'aime par erreur facebook notification - Forum Facebook
- Code erreur f3500-31 ✓ - Forum Bbox Bouygues
15 réponses
La fonction header() ne peut plus être utilisée lorsque les entêtes HTTP sont envoyées au client, c'est-à-dire avant que le premier caractère (espace compris) soit envoyé.
En gros il ne peut y avoir aucun caractère avant le "<?php" et aucun echo avant header()
En gros il ne peut y avoir aucun caractère avant le "<?php" et aucun echo avant header()
Bonjour,
pour le header, il faut qu'il n'y ait AUCUNE BALISE HTML ou caracter avant
hors tu mets:
<h1><?php include('login.php3'); ?></h1>
donc il y a un <h1> avant
d'ailleurs je ne voit pas l'interet de ce h1
mets tout simplment
et attention il faut que cette ligne soit bien au début de t page, pas de ligne vide ou d'espace avant
pour le header, il faut qu'il n'y ait AUCUNE BALISE HTML ou caracter avant
hors tu mets:
<h1><?php include('login.php3'); ?></h1>
donc il y a un <h1> avant
d'ailleurs je ne voit pas l'interet de ce h1
mets tout simplment
<?php include('login.php3'); ?>
et attention il faut que cette ligne soit bien au début de t page, pas de ligne vide ou d'espace avant
Il y a aussi que pour récupérer les valeurs de ton form qui est en mode post, tu dois faire $_POST['Utilisateur'] et pas $Utilisateur
Retirer le <h1> ne résoudra pas le problème car normalement il y a encore du texte avant comme le doctype, l'entête HTML (<head>, qui contient les meta, le CSS, les scripts JS, le titre, ...) et les autres éléments de la page.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
D'aprés vous je devrais remplacer la ligne:
if (($Utilisateur == "maxime") && ($Mdp == "max"))
par
if (($_POST['Utilisateur']=="maxime" )&&($_POST['MDP']=="max"))
Il est normal qu'il y ai de fois le sigle==?
J'essaye ca et je vous tiens au courant.
Merci
Maxime
if (($Utilisateur == "maxime") && ($Mdp == "max"))
par
if (($_POST['Utilisateur']=="maxime" )&&($_POST['MDP']=="max"))
Il est normal qu'il y ai de fois le sigle==?
J'essaye ca et je vous tiens au courant.
Merci
Maxime
C'est bien ça. Par contre, ça, ça sera encore mieux :
Pour les deux "=", c'est normal.
if($_POST['Utilisateur'] == "maxime" && $_POST['MDP'] == "max")Et sans majuscules ça serait encore mieux.
Pour les deux "=", c'est normal.
On avance,
J'ai incorporé la ligne donnée.
Maintenant lorsque je rentre identifiant et mdp et au lieu , c'est le texte du code de la page log.php s'affiche. ( je sais pas si c'est trés clair).
maxime
J'ai incorporé la ligne donnée.
Maintenant lorsque je rentre identifiant et mdp et au lieu , c'est le texte du code de la page log.php s'affiche. ( je sais pas si c'est trés clair).
maxime
je recommence:
j'ai changé la ligne de commande par celle que tu m'as proposée.
Une fois sur le site lorsque je mais des identifiants et mdp bon ou mauvais, avant j'avais un message d'erreur maintenat c'est le code du fichier log.php3 qui s'affiche, mais il ne "s'execute" pas.
Une idée??
merci
maxime
j'ai changé la ligne de commande par celle que tu m'as proposée.
Une fois sur le site lorsque je mais des identifiants et mdp bon ou mauvais, avant j'avais un message d'erreur maintenat c'est le code du fichier log.php3 qui s'affiche, mais il ne "s'execute" pas.
Une idée??
merci
maxime
La ligne est correcte, ça ne vient pas de là.
Tu as peut-être oublié de fermer un guillemet ou un apostrophe.
Tu as peut-être oublié de fermer un guillemet ou un apostrophe.
J'ai vérifié je n'ai rien trouvé qui cloche.
Peux tu verifier pour moi voici les 2 fichiers
login.php: ( a priori celui là doit etre bon)
<?php
if ($Message == "Invalide")
{ print ("<B><CENTER><FONT COLOR=RED>
!</FONT></CENTER></B>\n");
}
print ("<FORM ACTION=\"log.php3\" METHOD=POST>\n");
print ("Login : <INPUT TYPE=TEXT NAME=Utilisateur SIZE=10><BR>\n");
print ("Password : <INPUT TYPE=PASSWORD NAME=Mdp SIZE=7><BR>\n");
print ("<INPUT TYPE=SUBMIT NAME=SUBMIT VALUE=\"Go\">\n");
?>
log.php:
<?php
if($_POST['Utilisateur'] == "maxime" && $_POST['Mdp'] == "max")
{header ("Location: $accueil.php");
exit;
}
else
{header ("Location: login.php3?Message=Invalide");
exit;
}
?>
Merci de regarder.
maxime
Peux tu verifier pour moi voici les 2 fichiers
login.php: ( a priori celui là doit etre bon)
<?php
if ($Message == "Invalide")
{ print ("<B><CENTER><FONT COLOR=RED>
!</FONT></CENTER></B>\n");
}
print ("<FORM ACTION=\"log.php3\" METHOD=POST>\n");
print ("Login : <INPUT TYPE=TEXT NAME=Utilisateur SIZE=10><BR>\n");
print ("Password : <INPUT TYPE=PASSWORD NAME=Mdp SIZE=7><BR>\n");
print ("<INPUT TYPE=SUBMIT NAME=SUBMIT VALUE=\"Go\">\n");
?>
log.php:
<?php
if($_POST['Utilisateur'] == "maxime" && $_POST['Mdp'] == "max")
{header ("Location: $accueil.php");
exit;
}
else
{header ("Location: login.php3?Message=Invalide");
exit;
}
?>
Merci de regarder.
maxime
le fichier accueil est situé dans le meme dossier.
a quoi sert le symbole $ ?
il y avait un probleme de majuscule entre login.php et log.php
Maintenant, lorsque je rentre les identifianst et mdp sur le site, le site veut que je télécharge le fichier log.php3.
je me dis qu'il y a une commande dans le code login.php qui me "dis" de le télécharger et non pas de l'executer.
Voici le code:
<?php
if ($Message == "Invalide")
{ print ("<B><CENTER><FONT COLOR=RED>Le Login et Password ne sont pas valide !</FONT></CENTER></B>\n");
}
print ("<FORM ACTION=\"log.php3\" METHOD=POST>\n");
print ("Login : <INPUT TYPE=TEXT NAME=Utilisateur SIZE=10><BR>\n");
print ("Password : <INPUT TYPE=PASSWORD NAME=Mdp SIZE=7><BR>\n");
print ("<INPUT TYPE=SUBMIT NAME=SUBMIT VALUE=\"Go\">\n");
?>
Il y a t-il qqchose dans ce gout là??
Merci
a quoi sert le symbole $ ?
il y avait un probleme de majuscule entre login.php et log.php
Maintenant, lorsque je rentre les identifianst et mdp sur le site, le site veut que je télécharge le fichier log.php3.
je me dis qu'il y a une commande dans le code login.php qui me "dis" de le télécharger et non pas de l'executer.
Voici le code:
<?php
if ($Message == "Invalide")
{ print ("<B><CENTER><FONT COLOR=RED>Le Login et Password ne sont pas valide !</FONT></CENTER></B>\n");
}
print ("<FORM ACTION=\"log.php3\" METHOD=POST>\n");
print ("Login : <INPUT TYPE=TEXT NAME=Utilisateur SIZE=10><BR>\n");
print ("Password : <INPUT TYPE=PASSWORD NAME=Mdp SIZE=7><BR>\n");
print ("<INPUT TYPE=SUBMIT NAME=SUBMIT VALUE=\"Go\">\n");
?>
Il y a t-il qqchose dans ce gout là??
Merci
Si j'ai bien compris le probleme viendrait du fait que lorsque le fichier log.php3 s'execute une page html est déjà ouverte.
Peux tu me dire comment faire pour résoudre ce problème, ca fait 2 jours que je cherche sur le web la réponse et je n'y arrive pas.
D'avance merci