AIDE! Parse error: syntax error, unexpected T_IF on line 3 [Résolu]

Signaler
Messages postés
27
Date d'inscription
samedi 17 mai 2014
Statut
Membre
Dernière intervention
4 novembre 2015
-
Messages postés
28936
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
31 mai 2020
-
Bonjour, j'ai une simple erreur que je ne comprend pas :( c'est la seule erreur de mon gros espace membre :(
Voici l'erreur:

Parse error: syntax error, unexpected T_IF in /Site/Membre/login.php on line 3

Et voici le code:

<?php include('includes/config.php'); 
if(isset($_POST['envoyer'])) {
if(isset($_POST['pseudo']) AND !empty($_POST['pseudo']) AND if(isset($_POST['motdepasse']) AND !empty($_POST['motdepasse']))
{
//Tout les champs ont été remplis
$pseudo = mysql_escape_string($_POST['pseudo']);
$motdepasse = mysql_escape_string(md5($_POST['motdepasse']));

$req1 = mysql_query('SELECT * FORM membres WHERE pseudo ="'.$pseudo.'"');
$info_membre = mysql_fetch_array($req1);

if(isset($info_membre['pseudo'])) {


if($motdepasse == $info_membre['motdepasse'])
{

$_SESSION['pseudo'] = $pseudo;
$succes = 'Connexion réussie';

}
else
{
$erreur = 'Le pseudo ou mot de passe entré sont incorrect,';
}

}
else
{
$erreur = 'Le pseudo n\'existe pas';
}
}
else
{
$erreur = 'Tout les champs sont obligatoires. ';
}
}



?>
<h1 style="text-align: center;">Connexion</h1>
<hr>
<?php if(isset($erreur)) { echo $erreur; } ?>
<?php if(isset($succes)) { echo $succes; } ?>
<hr>
<form action="register.php" method="post">
Pseudo : <input type="text" name="pseudo" value="<?php if(isset($_POST['pseudo'])) { echo $_POST['pseudo']; } ?>"><br>
Mot de passe : <input type="password" name="motdepasse" value="<?php if(isset($_POST['motdepasse'])) { echo $_POST['motdepasse']; } ?>"><br>
<input type="submit" name="envoyer" value="Se connecter">
</form>




Merci d'avance pour votre précieuse aide!

3 réponses

Messages postés
28936
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
31 mai 2020
328
Bonjour.
Dans la ligne 3 ... remplacer les "AND" par des "&&"
Messages postés
27
Date d'inscription
samedi 17 mai 2014
Statut
Membre
Dernière intervention
4 novembre 2015

Comme le voici?

if(isset($_POST['pseudo']) AND !empty($_POST['pseudo']) && if(isset($_POST['motdepasse']) && !empty($_POST['motdepasse']))
Messages postés
14874
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
30 mai 2020
413
Bonsoir, je pense que jordane voulait dire TOUS les "and" et pas seulement les 2 derniers....
Messages postés
27
Date d'inscription
samedi 17 mai 2014
Statut
Membre
Dernière intervention
4 novembre 2015

Oui, j'ai bien essayé , mais la même erreur surviens...
Messages postés
14874
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
30 mai 2020
413
Ha bon, parce que dans le code que tu as reposté, il reste un and.....

Posté depuis CCM Live forum pour iPhone/iPad
Messages postés
27
Date d'inscription
samedi 17 mai 2014
Statut
Membre
Dernière intervention
4 novembre 2015

Oui désoler, c'est par la suite que j'ai eu l'idée de l'essayer TOUS les AND , mais en vain. Toujours la même erreur.
Messages postés
28936
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
31 mai 2020
328
Redonne nous ton code (modifié) et le message d'erreur exacte..
Messages postés
27
Date d'inscription
samedi 17 mai 2014
Statut
Membre
Dernière intervention
4 novembre 2015

Bonjour,

Le re-voici, modifier:

<?php include('includes/config.php'); 
if(isset($_POST['envoyer'])) {
if(isset($_POST['pseudo']) && !empty($_POST['pseudo']) && if(isset($_POST['motdepasse']) && !empty($_POST['motdepasse']))
{
//Tout les champs ont été remplis
$pseudo = mysql_escape_string($_POST['pseudo']);
$motdepasse = mysql_escape_string(md5($_POST['motdepasse']));

$req1 = mysql_query('SELECT * FORM membres WHERE pseudo ="'.$pseudo.'"');
$info_membre = mysql_fetch_array($req1);

if(isset($info_membre['pseudo'])) {


if($motdepasse == $info_membre['motdepasse'])
{

$_SESSION['pseudo'] = $pseudo;
$succes = 'Connexion réussie';

}
else
{
$erreur = 'Le pseudo ou mot de passe entré sont incorrect,';
}

}
else
{
$erreur = 'Le pseudo n\'existe pas';
}
}
else
{
$erreur = 'Tout les champs sont obligatoires. ';
}
}




?>
<h1 style="text-align: center;">Connexion</h1>
<hr>
<?php if(isset($erreur)) { echo $erreur; } ?>
<?php if(isset($succes)) { echo $succes; } ?>
<hr>
<form action="register.php" method="post">
Pseudo : <input type="text" name="pseudo" value="<?php if(isset($_POST['pseudo'])) { echo $_POST['pseudo']; } ?>"><br>
Mot de passe : <input type="password" name="motdepasse" value="<?php if(isset($_POST['motdepasse'])) { echo $_POST['motdepasse']; } ?>"><br>
<input type="submit" name="envoyer" value="Se connecter">
</form>


Et voici l'erreur:

Parse error: syntax error, unexpected T_IF in /Site/Membre/login.php on line 3

Merci
Messages postés
28936
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
31 mai 2020
328
Tu essaies d'imbriquer in IF dans un autre IF..
( ce que te dis le message d'erreur... Ligne 3 ... unexpected T_IF...

Bref :Si tu enlèves ton second if...ça devrait mieux fonctionner
if( isset($_POST['pseudo']) 
     && !empty($_POST['pseudo']) 
     &&  isset($_POST['motdepasse']) 
    && !empty($_POST['motdepasse'])
    ){