Parse error, unexpected T_VARIABLE
jack in the box
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
débutant en PHP j'ai ce message (dont je n'arrive pas à me dépétrer)
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in /htdocs/BDD/ajouter.php on line 9
_________________
codes :
formulaire.php
<form name="formulaire" method="POST" action="ajouter.php">
<table width="800" border="1">
<tr>
<td>Numero adhérent :</td>
<td><input num="num" type="int(11)" id="num"></td>
</tr>
<tr>
<td>Nom:</td>
<td><input nom="nom" type="text" id="nom" size="30"></td>
</tr>
<tr>
<td>Prénom:</td>
<td><input prenom="prenom" type="text" id="prenom" size="30"></td>
</tr>
<tr>
<td>Offre Jardin et Nature :</td>
<td><input o_jar="o_jar" type="varchar" id="o_jar" size="128"></td>
</tr>
<tr>
<td>Offre Aide domestique:</td>
<td><input o_dom="o_dom" type="varchar" id="o_dom" size="128"></td>
</tr>
<tr>
<td>Offre Garde et Baby-sitting :</td>
<td><input o_gar="o_gar" type="varchar" id="o_gar" size="128"></td>
</tr>
<tr>
<td colspan="2"><div align="center">
<input type="submit" name="Submit" value="Envoyer">
</div></td>
</tr>
</table>
</form>
____________________________________
ajouter.php
<?php
include("connexion.php");
if ($POST['num'] != '')
{
connexion();
mysql_query("INSERT INTO database VALUES('','$_POST['num']','$_POST['nom']','$_POST['prenom']','$_POST['o_jar']','$_POST['o_dom']','$_POST['o_gar']')");
mysql_query or die(mysql_error());
}
else
{
echo 'Erreur ! Vous devez indiquer votre numéro d&rsquoadhérent !';
}
?>
débutant en PHP j'ai ce message (dont je n'arrive pas à me dépétrer)
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in /htdocs/BDD/ajouter.php on line 9
_________________
codes :
formulaire.php
<form name="formulaire" method="POST" action="ajouter.php">
<table width="800" border="1">
<tr>
<td>Numero adhérent :</td>
<td><input num="num" type="int(11)" id="num"></td>
</tr>
<tr>
<td>Nom:</td>
<td><input nom="nom" type="text" id="nom" size="30"></td>
</tr>
<tr>
<td>Prénom:</td>
<td><input prenom="prenom" type="text" id="prenom" size="30"></td>
</tr>
<tr>
<td>Offre Jardin et Nature :</td>
<td><input o_jar="o_jar" type="varchar" id="o_jar" size="128"></td>
</tr>
<tr>
<td>Offre Aide domestique:</td>
<td><input o_dom="o_dom" type="varchar" id="o_dom" size="128"></td>
</tr>
<tr>
<td>Offre Garde et Baby-sitting :</td>
<td><input o_gar="o_gar" type="varchar" id="o_gar" size="128"></td>
</tr>
<tr>
<td colspan="2"><div align="center">
<input type="submit" name="Submit" value="Envoyer">
</div></td>
</tr>
</table>
</form>
____________________________________
ajouter.php
<?php
include("connexion.php");
if ($POST['num'] != '')
{
connexion();
mysql_query("INSERT INTO database VALUES('','$_POST['num']','$_POST['nom']','$_POST['prenom']','$_POST['o_jar']','$_POST['o_dom']','$_POST['o_gar']')");
mysql_query or die(mysql_error());
}
else
{
echo 'Erreur ! Vous devez indiquer votre numéro d&rsquoadhérent !';
}
?>
A voir également:
- Parse error, unexpected T_VARIABLE
- Cmos checksum error ✓ - Forum Carte-mère/mémoire
- Playback error reconnect in 3s (1/5) francais - Forum Box et Streaming vidéo
- Parse error: syntax error, unexpected token "use" ✓ - Forum PHP
- Error 1962 ✓ - Forum PC fixe
- A javascript error occurred in the main process - Forum Matériel & Système
2 réponses
Vérifie le name et le type de tes input, des choses comme input o_gar="o_gar" type="varchar" ça n'existe pas.
Bonjour
C'est vrai que le input type="varchar" n'existe pas, il ne faut pas mélanger le SQL et le HTML. Mais ce n'est pas ce qui provoque ton erreur.
Ton erreur vient de l'écriture incorrecte de ta requête. Dans une chaîne littérale entre doubles quotes en PHP, il NE FAUT PAS mettre d'apostrophes autour des indices de tableaux :
et non pas
Et bien sûr idem pour les autres variables.
Et ta ligne suivante
Par ailleurs, tu ferais bien de songer à utiliser PDO plutôt que les fonctions mysql_xxx qui sont largement obsolètes.
C'est vrai que le input type="varchar" n'existe pas, il ne faut pas mélanger le SQL et le HTML. Mais ce n'est pas ce qui provoque ton erreur.
Ton erreur vient de l'écriture incorrecte de ta requête. Dans une chaîne littérale entre doubles quotes en PHP, il NE FAUT PAS mettre d'apostrophes autour des indices de tableaux :
"...VALUES('','$_POST[num]'..."
et non pas
"...VALUES('','$_POST['num']'..."
Et bien sûr idem pour les autres variables.
Et ta ligne suivante
mysql_query or die(mysql_error());ne veut rien dire : ce "or die..." devrait être à la fin de la ligne précédente, pas ici.
Par ailleurs, tu ferais bien de songer à utiliser PDO plutôt que les fonctions mysql_xxx qui sont largement obsolètes.