Parse error: syntax error, unexpected T_VARIABLE
Fermé
camarchelg
Messages postés
8
Date d'inscription
vendredi 13 juin 2014
Statut
Membre
Dernière intervention
14 juin 2014
-
Modifié par camarchelg le 13/06/2014 à 17:45
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 - 15 juin 2014 à 09:59
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 - 15 juin 2014 à 09:59
A voir également:
- Parse error: syntax error, unexpected T_VARIABLE
- Cmos checksum error ✓ - Forum Carte-mère/mémoire
- Error 0x80070643 - Accueil - Windows
- Cpu over temperature error - Forum Matériel & Système
- Error 10 pioneer ✓ - Forum Autoradio
- Fan error lenovo - Forum Refroidissement
12 réponses
Utilisateur anonyme
Modifié par lobotoFix le 13/06/2014 à 18:05
Modifié par lobotoFix le 13/06/2014 à 18:05
Salut, je vois un truc bizzare :
ensuite c'est autre mais tu es injectable ....
http://fr.openclassrooms.com/informatique/cours/eviter-les-injections-sql
bonne journée
׺°"~'"°º×]|I{*------» LÖBÖTÖ «------*}I|[׺°"~'"°º×
<?php include("connexion.php"); $result=false; if(isset($_POST['submit'])) ?>/*pouquoi fermer*/ { <?php // pour réouvrir ??? $amdp=$_POST['amdp'];
ensuite c'est autre mais tu es injectable ....
http://fr.openclassrooms.com/informatique/cours/eviter-les-injections-sql
bonne journée
׺°"~'"°º×]|I{*------» LÖBÖTÖ «------*}I|[׺°"~'"°º×
ReDLoG
Messages postés
243
Date d'inscription
mardi 12 mars 2013
Statut
Membre
Dernière intervention
28 octobre 2021
57
13 juin 2014 à 17:47
13 juin 2014 à 17:47
Bonsoir,
Normalement une erreur relevée par PHP comporte un numéro de ligne précédée du nom de fichier dans laquelle se trouve l'erreur: Parse error: syntax error, unexpected T_VARIABLE......
A toi de jouer...
Cordialement.
Normalement une erreur relevée par PHP comporte un numéro de ligne précédée du nom de fichier dans laquelle se trouve l'erreur: Parse error: syntax error, unexpected T_VARIABLE......
A toi de jouer...
Cordialement.
camarchelg
Messages postés
8
Date d'inscription
vendredi 13 juin 2014
Statut
Membre
Dernière intervention
14 juin 2014
Modifié par camarchelg le 13/06/2014 à 17:51
Modifié par camarchelg le 13/06/2014 à 17:51
ouii effectivement ReDLog , mais j'arrive pas a detecter le type de cette erreur , tout en sachant que j'ai bien decortiqué le code mais en vain
camarchelg
Messages postés
8
Date d'inscription
vendredi 13 juin 2014
Statut
Membre
Dernière intervention
14 juin 2014
13 juin 2014 à 18:18
13 juin 2014 à 18:18
merciii lobotoFix !
mais apres l'avoir corrigé il me lance :
Parse error: syntax error, unexpected '{' in C:\wamp\www\TPE\changerMP.php on line 19
j'arrive pas a detecter l'accolade manquante !
mais apres l'avoir corrigé il me lance :
Parse error: syntax error, unexpected '{' in C:\wamp\www\TPE\changerMP.php on line 19
j'arrive pas a detecter l'accolade manquante !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Utilisateur anonyme
Modifié par lobotoFix le 13/06/2014 à 19:11
Modifié par lobotoFix le 13/06/2014 à 19:11
Salut, à vu de nez (je peux me tromper)
׺°"~'"°º×]|I{*------» LÖBÖTÖ «------*}I|[׺°"~'"°º×
echo 'Erreur entre le nouveau mot de passe entré et la verification'; }//p'etre là } else { echo 'Le mot de passe actuel n\'est pas valide'; }// pt'etre là aaussi } else { echo 'Veuillez remplir tous les champs'; } }
׺°"~'"°º×]|I{*------» LÖBÖTÖ «------*}I|[׺°"~'"°º×
camarchelg
Messages postés
8
Date d'inscription
vendredi 13 juin 2014
Statut
Membre
Dernière intervention
14 juin 2014
Modifié par camarchelg le 13/06/2014 à 19:17
Modifié par camarchelg le 13/06/2014 à 19:17
merci pour la precision , mais celles que vs vennez de mettre en gras ferment d'autres accoalde en haut du if , je vois pas comment je vais les eliminer
camarchelg
Messages postés
8
Date d'inscription
vendredi 13 juin 2014
Statut
Membre
Dernière intervention
14 juin 2014
13 juin 2014 à 19:35
13 juin 2014 à 19:35
mercii infiniment lobotoFix !!
Utilisateur anonyme
13 juin 2014 à 21:23
13 juin 2014 à 21:23
Salut,
remet voir ton code modifier et celui de connexion.php (sans les identifiants)
remet voir ton code modifier et celui de connexion.php (sans les identifiants)
camarchelg
Messages postés
8
Date d'inscription
vendredi 13 juin 2014
Statut
Membre
Dernière intervention
14 juin 2014
13 juin 2014 à 23:13
13 juin 2014 à 23:13
dac le voila :)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Changer le mot de passe</title>
</head>
<body>
<form method="post" action="">
<label>Mot de passe actuel : <input type="password" name="amdp" ></label><br></br>
<label>Nouveau mot de passe : <input type="password" name="nmdp" ></label><br></br>
<label>Verification mot de passe : <input type="password" name="vmdp" ></label><br></br>
<input type="submit" name="submit" value=" Envoyer ">
</form>
<?php
include("connexion.php");
$result=false;
$amdp=$_POST['amdp'];
$nmdp=$_POST['nmdp'];
$vmdp=$_POST['vmdp'];
$login=$_SESSION['Etud_mat'];
if(isset($_POST['submit']))
{
if (($amdp!='') and ($nmdp!='')and ($vmdp!='')) {
if ($amdp==$_SESSION['password']){
if($nmdp==$vmdp){
$sql="UPDATE etudiant SET psw='$nmdp' WHERE Etud_mat='$login'";
$result=mysql_query($sql);
echo 'Modification du mot de passe effectuee avec succes';
$_SESSION['password']=$nmdp;
} else {
echo 'Erreur entre le nouveau mot de passe entré et la verification';
}
} else {
echo 'Le mot de passe actuel n\'est pas valide';
}
}
else { echo 'Veuillez remplir tous les champs';}
}
else {
echo 'Page de modification de mot de passe - special VIP';
}
?>
</body>
</html>
et voila pour la connexion :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<?php
try
{
$bdd = new PDO('mysql:host=localhost;dbname=tpe_bd', 'root','', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
?>
</head>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Changer le mot de passe</title>
</head>
<body>
<form method="post" action="">
<label>Mot de passe actuel : <input type="password" name="amdp" ></label><br></br>
<label>Nouveau mot de passe : <input type="password" name="nmdp" ></label><br></br>
<label>Verification mot de passe : <input type="password" name="vmdp" ></label><br></br>
<input type="submit" name="submit" value=" Envoyer ">
</form>
<?php
include("connexion.php");
$result=false;
$amdp=$_POST['amdp'];
$nmdp=$_POST['nmdp'];
$vmdp=$_POST['vmdp'];
$login=$_SESSION['Etud_mat'];
if(isset($_POST['submit']))
{
if (($amdp!='') and ($nmdp!='')and ($vmdp!='')) {
if ($amdp==$_SESSION['password']){
if($nmdp==$vmdp){
$sql="UPDATE etudiant SET psw='$nmdp' WHERE Etud_mat='$login'";
$result=mysql_query($sql);
echo 'Modification du mot de passe effectuee avec succes';
$_SESSION['password']=$nmdp;
} else {
echo 'Erreur entre le nouveau mot de passe entré et la verification';
}
} else {
echo 'Le mot de passe actuel n\'est pas valide';
}
}
else { echo 'Veuillez remplir tous les champs';}
}
else {
echo 'Page de modification de mot de passe - special VIP';
}
?>
</body>
</html>
et voila pour la connexion :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<?php
try
{
$bdd = new PDO('mysql:host=localhost;dbname=tpe_bd', 'root','', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
?>
</head>
</html>
ReDLoG
Messages postés
243
Date d'inscription
mardi 12 mars 2013
Statut
Membre
Dernière intervention
28 octobre 2021
57
13 juin 2014 à 23:54
13 juin 2014 à 23:54
Ton fichier connexion.php NE doit PAS contenir de code HTML, seulement du code PHP :
C'est ce qui fait buguer ton code au niveau des accolades lorsque tu inclus le fichier connexion.php dans le script de traitement.
Cordialement
<?php try { $bdd = new PDO('mysql:host=localhost;dbname=tpe_bd', 'root','', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION)); } catch(Exception $e) { die('Erreur : '.$e->getMessage()); } ?>
C'est ce qui fait buguer ton code au niveau des accolades lorsque tu inclus le fichier connexion.php dans le script de traitement.
Cordialement
camarchelg
Messages postés
8
Date d'inscription
vendredi 13 juin 2014
Statut
Membre
Dernière intervention
14 juin 2014
Modifié par camarchelg le 14/06/2014 à 01:04
Modifié par camarchelg le 14/06/2014 à 01:04
avec votre modification ReDLoG , je me suis retrouvé avec une autre erreur de type T_STRING
Parse error: syntax error, unexpected T_STRING in C:\wamp\www\TPE\changerMP.php on line 22
la ligne 22 c exactement ça : if(isset($_POST['submit']))
cordialement
Parse error: syntax error, unexpected T_STRING in C:\wamp\www\TPE\changerMP.php on line 22
la ligne 22 c exactement ça : if(isset($_POST['submit']))
cordialement
Utilisateur anonyme
Modifié par lobotoFix le 14/06/2014 à 08:06
Modifié par lobotoFix le 14/06/2014 à 08:06
salut, ReDLoG a raison il ne faut pas de HTML.
Ensuite, je pense que tu aura une erreur plus tard. En effet, tu utilise des sessions.
En haut de chaque fichier avant tout code, tu dois les déclarées.
Ensuite une fois ton code fonctionnel il faudra impérativeement que tu hash tout tes mots de passes et que tu corrige les risques d'injections. Je vois que pour te connecter tu utilise PDO. PDO cela permet de faire des requêtes préparées, pourquoi ne pas les utilisées...
׺°"~'"°º×]|I{*------» LÖBÖTÖ «------*}I|[׺°"~'"°º×
Ensuite, je pense que tu aura une erreur plus tard. En effet, tu utilise des sessions.
En haut de chaque fichier avant tout code, tu dois les déclarées.
<?php session_start(); ?> //puis tu met ta page normalement <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> /* * bla bla bla */
Ensuite une fois ton code fonctionnel il faudra impérativeement que tu hash tout tes mots de passes et que tu corrige les risques d'injections. Je vois que pour te connecter tu utilise PDO. PDO cela permet de faire des requêtes préparées, pourquoi ne pas les utilisées...
׺°"~'"°º×]|I{*------» LÖBÖTÖ «------*}I|[׺°"~'"°º×
Utilisateur anonyme
14 juin 2014 à 08:43
14 juin 2014 à 08:43
salut, je viens de tester !
alors si tu remet comme avant ceci :
que tu enleve le code html de connexion.php
que tu démarre tes sessions en début de fichier et que tes sessions existe il n'y aura pas d'erreur de type php. Ensuite sql je sais pas...
alors si tu remet comme avant ceci :
$amdp=$_POST['amdp']; $nmdp=$_POST['nmdp']; $vmdp=$_POST['vmdp']; $login=$_SESSION['Etud_mat']; if(isset($_POST['submit'])) { // en if(isset($_POST['submit'])) { $amdp=$_POST['amdp']; $nmdp=$_POST['nmdp']; $vmdp=$_POST['vmdp']; $login=$_SESSION['Etud_mat'];
que tu enleve le code html de connexion.php
que tu démarre tes sessions en début de fichier et que tes sessions existe il n'y aura pas d'erreur de type php. Ensuite sql je sais pas...
camarchelg
Messages postés
8
Date d'inscription
vendredi 13 juin 2014
Statut
Membre
Dernière intervention
14 juin 2014
14 juin 2014 à 22:11
14 juin 2014 à 22:11
merci bcp lobotoFix et ReDLoG pour votre aide , c'est toujours le meme probleme qui persiste , unexpected T_STRING ...
en tous cas merci encore une fois
en tous cas merci encore une fois
jisisv
Messages postés
3645
Date d'inscription
dimanche 18 mars 2001
Statut
Modérateur
Dernière intervention
15 janvier 2017
934
15 juin 2014 à 09:59
15 juin 2014 à 09:59
johand@osiris: ~ $ cat parse_error.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Changer le mot de passe</title>
</head>
<body>
<form method="post" action="">
<label>Mot de passe actuel : <input type="password" name="amdp" ></label><br></br>
<label>Nouveau mot de passe : <input type="password" name="nmdp" ></label><br></br>
<label>Verification mot de passe : <input type="password" name="vmdp" ></label><br></br>
<input type="submit" name="submit" value=" Envoyer ">
</form>
<?php
include("connexion.php");
$result=false;
if(isset($_POST['submit']))
{
$amdp=$_POST['amdp'];
$nmdp=$_POST['nmdp'];
$vmdp=$_POST['vmdp'];
$login=$_SESSION['Etud_mat'];
if (($amdp!='')&&($nmdp!='')&&($vmdp!='')) {
if ($amdp==$_SESSION['password']){
if($nmdp==$vmdp){
$sql="UPDATE etudiant SET psw='$nmdp' WHERE Etud_mat='$login'";
$result=mysql_query($sql);
echo 'Modification du mot de passe effectuee avec succes';
$_SESSION['password']=$nmdp;
} else {
echo 'Erreur entre le nouveau mot de passe entré et la verification';
}
} else {
echo 'Le mot de passe actuel n\'est pas valide';
}
} else {
echo 'Veuillez remplir tous les champs';
}
}
else {
echo 'Page de modification de mot de passe - special VIP';
}
?>
</body>
</html>
johand@osiris: ~ $ php -l parse_error.php
No syntax errors detected in parse_error.php
Ceci ne présage en rien du fonctionnemen correct du code !