Erreur dans mon programme php
ANTHURIUMRE
-
ANTHURIUMRE -
ANTHURIUMRE -
Bonjour,
J'essaie de mettre en place tant bien que mal une page réservée en programmant avec php. Mais quand je soumets le login et mot de passe une erreur s'affiche à la ligne 50 relatif à mon fichier login.php sans que je puisse comprendre les motifs. Pouvez-vous s'il vous plaît m'éclairer. Merci pour votre aide : Voici le code :
<?php
/*programme : login.php
*description : Programme de login pour la section à accès réservé
*du site. Il propose une option de
*s'identifier par un couple nom de login et mot de passe
*identificateur et mot de passe sont conservés dans une base
*/
session_start();
include("nova.inc");
switch (@$_post['do'])
{
case"login":
$cxn=mysqli_connect($host,$user,$password,$database)
or die ("Connexion impossible au serveur dans case login");
$sql="SELECT loginName FROM adherents
WHERE loginName='$_POST[fusername]'";
$result=mysqli_query(cxn,$sql)
or die ("Requête en échec 1.");
$num=mysqli_num_rows($result);
if ($num>0) // loginName non trouvé
{
$sql="SELECT loginName FROM adherents
WHERE loginName='$_POST[fusername]'
AND password=md5('$_POST[fpassword]')";
$result2=mysqli_query($cxn,$sql)
or die("Requête en échec 2.");
$num2=mysqli_num_rows($result2);
if (num2>0) // mot de passe OK
{
$_SESSION['auth']="yes";
$logname=$_POST['fusername'];
$_SESSION['logname']=$logname;
$today=date("Y-m-d h:i:s");
$sql="INSERT INTO Login (loginName, loginTime)
VALUES ('$logname','$today')";
$result=mysqli_query($cxn,$sql)
or die("INSERT en échec.");
header("location:membre_page.php");/***** *****/
}
else // mot de passe incorrect
{
$message="Le nom de Login '$POST(fusername)'
existe, mais le mot de passe ne
va pas ! Réessayez.<br>";
include("login_form.inc");
}
}
elself ($num==0) // Nom de login introuvable
$message="Le nom de login que vous avez saisi n'existe pas. Essayez encore.<br>";
include("login_form.inc");
}
?>
J'essaie de mettre en place tant bien que mal une page réservée en programmant avec php. Mais quand je soumets le login et mot de passe une erreur s'affiche à la ligne 50 relatif à mon fichier login.php sans que je puisse comprendre les motifs. Pouvez-vous s'il vous plaît m'éclairer. Merci pour votre aide : Voici le code :
<?php
/*programme : login.php
*description : Programme de login pour la section à accès réservé
*du site. Il propose une option de
*s'identifier par un couple nom de login et mot de passe
*identificateur et mot de passe sont conservés dans une base
*/
session_start();
include("nova.inc");
switch (@$_post['do'])
{
case"login":
$cxn=mysqli_connect($host,$user,$password,$database)
or die ("Connexion impossible au serveur dans case login");
$sql="SELECT loginName FROM adherents
WHERE loginName='$_POST[fusername]'";
$result=mysqli_query(cxn,$sql)
or die ("Requête en échec 1.");
$num=mysqli_num_rows($result);
if ($num>0) // loginName non trouvé
{
$sql="SELECT loginName FROM adherents
WHERE loginName='$_POST[fusername]'
AND password=md5('$_POST[fpassword]')";
$result2=mysqli_query($cxn,$sql)
or die("Requête en échec 2.");
$num2=mysqli_num_rows($result2);
if (num2>0) // mot de passe OK
{
$_SESSION['auth']="yes";
$logname=$_POST['fusername'];
$_SESSION['logname']=$logname;
$today=date("Y-m-d h:i:s");
$sql="INSERT INTO Login (loginName, loginTime)
VALUES ('$logname','$today')";
$result=mysqli_query($cxn,$sql)
or die("INSERT en échec.");
header("location:membre_page.php");/***** *****/
}
else // mot de passe incorrect
{
$message="Le nom de Login '$POST(fusername)'
existe, mais le mot de passe ne
va pas ! Réessayez.<br>";
include("login_form.inc");
}
}
elself ($num==0) // Nom de login introuvable
$message="Le nom de login que vous avez saisi n'existe pas. Essayez encore.<br>";
include("login_form.inc");
}
?>
A voir également:
- Erreur dans mon programme php
- Programme demarrage windows - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans un autre programme - Guide
- Message programmé iphone - Guide
- Mettre en veille un programme - Guide
- Forcer la fermeture d'un programme - Guide
6 réponses
ne manquerait-il pas une accolade ?
elself ($num==0) // Nom de login introuvable
{
$message="Le nom de login que vous avez saisi n'existe pas. Essayez encore.<br>";
include("login_form.inc");
}
elself ($num==0) // Nom de login introuvable
{
$message="Le nom de login que vous avez saisi n'existe pas. Essayez encore.<br>";
include("login_form.inc");
}
Il manque 2 accolades, une d'ouverture et une de fermeture :
ca donnerais :
ca donnerais :
}
elself ($num==0) // Nom de login introuvable
{
$message="Le nom de login que vous avez saisi n'existe pas. Essayez encore.<br>";
include("login_form.inc");
}
}
Bonjour bien que les problèmes précédents soient résolus un autre vient se présenter lorsque je soumets un login et un mot de passe pour tester mon code : le message suivant s'affiche à son tour :
Parse error: syntax error, unexpected T_LNUMBER, expecting ',' or ';' in C:\Program Files\EasyPHP-5.3.2i\www\login_form.inc on line 77
Pouvez-vous m'éclairer s'il vous plaît ? Merci et si vous ne pouvez pas ce n'est pas grave et merci quand même.
Voici la partie concerné pour la ligne 77 du fichier cité :
<table border="1" cellspading="5" cellspacing="0">
<tr><td colspan="3" class="grey_banner">
Membres uniquement</td></tr>
<tr><td width="33%" valign="top" class="bold_large">
Etes-vous membres ?
<!--pour les logins des nouveaux membres-->
<form action="Login.php" method="POST">
<p><table border="0">
<?php
if (isset($message))
{
echo"<tr><td style='color:red' /* ligne 77 */
colspan="2">$message <br/></td></tr>";
}
?>
<tr><td class="bold_right">Identifiant</td>
<td><input type="text" name="fusername"
sieze="20" maxsize="20"></td></tr>
<tr><td class="bold_right">Mot de passe</td>
<td><input type="password" name="password"
size="20" maxisize="20"></td></tr>
<input type="hidden" name="do"
value="login">
<tr><td style="text-align:center" colspan="2">
<br/><input type="submit" name="log"
value="identifiez-vous"></td></tr>
</table>
</form>
Parse error: syntax error, unexpected T_LNUMBER, expecting ',' or ';' in C:\Program Files\EasyPHP-5.3.2i\www\login_form.inc on line 77
Pouvez-vous m'éclairer s'il vous plaît ? Merci et si vous ne pouvez pas ce n'est pas grave et merci quand même.
Voici la partie concerné pour la ligne 77 du fichier cité :
<table border="1" cellspading="5" cellspacing="0">
<tr><td colspan="3" class="grey_banner">
Membres uniquement</td></tr>
<tr><td width="33%" valign="top" class="bold_large">
Etes-vous membres ?
<!--pour les logins des nouveaux membres-->
<form action="Login.php" method="POST">
<p><table border="0">
<?php
if (isset($message))
{
echo"<tr><td style='color:red' /* ligne 77 */
colspan="2">$message <br/></td></tr>";
}
?>
<tr><td class="bold_right">Identifiant</td>
<td><input type="text" name="fusername"
sieze="20" maxsize="20"></td></tr>
<tr><td class="bold_right">Mot de passe</td>
<td><input type="password" name="password"
size="20" maxisize="20"></td></tr>
<input type="hidden" name="do"
value="login">
<tr><td style="text-align:center" colspan="2">
<br/><input type="submit" name="log"
value="identifiez-vous"></td></tr>
</table>
</form>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
bonjour,
il faut faire attention aux cotes. De plus pour afficher le contenu de ta variable $message, utilise la concaténation comme ceci :
echo "<tr><td style='color:red' colspan='2'>".$message."<br/></td></tr>";
ca devrait marcher comme ca.
il faut faire attention aux cotes. De plus pour afficher le contenu de ta variable $message, utilise la concaténation comme ceci :
echo "<tr><td style='color:red' colspan='2'>".$message."<br/></td></tr>";
ca devrait marcher comme ca.
Parse error: parse error, unexpected T_VARIABLE in C:\Program Files\EasyPHP 2.0b1\www\Login.php on line 50
Encore une fois merci.