Unexpected T_Variable

Ekin0x
Invité n'ayant pas de compte PHPfrance

29 oct. 2012, 11:21

Bonjour, j'ai cette erreur avec mon PHP, moi je trouve aucune erreur de syntaxe, voici l'erreur:

Parse error: syntax error, unexpected T_VARIABLE in /home/craft2bu/public_html/index.php on line 13


Et voici la ligne 13:

if(mysql_query("INSERT INTO".$Mysql['table']." (username, password, mail) VALUES ('".$_POST['username']."', '".sha1($_POST['password'])."', '"$_POST['mail']."")) echo 'Enregistré!';

Voila,

Merci d'avance.

Eléphant du PHP | 267 Messages

29 oct. 2012, 13:08

salut,

il manque une parenthèse fermante

@+
dix2

Mammouth du PHP | 702 Messages

29 oct. 2012, 16:38

non il ne manque aucune paranthèse ni ouvrante ni fermante, tu as juste oublié un point lors de la concaténation à cet endroit.
'".$_POST['mail'].
juste avant le echo enregistré.

De plus tu devrais échapper tes variables, la c'est assez facile de faire des injections dans ta base de données.

Ekin0x
Invité n'ayant pas de compte PHPfrance

31 oct. 2012, 12:35

J'ai toujours une erreur,
Parse error: syntax error, unexpected '(' in /home/craft2bu/public_html/index.php on line 13

Eléphanteau du PHP | 32 Messages

31 oct. 2012, 12:42

Il manque une parenthèse fermante


tu ouvre une parenthèse ici :
VALUES ( ....
Elle n'est pas fermé celle ci :)

Ekin0x
Invité n'ayant pas de compte PHPfrance

31 oct. 2012, 13:00

if(mysql_query("INSERT INTO".($Mysql['table'])." (username, password, mail) VALUES '"($_POST['username'])."', '".sha1($_POST['password'])."', '".$_POST(['mail']).) echo 'Enregistré!');


Toujours la même erreure.

Mammouth du PHP | 2278 Messages

31 oct. 2012, 14:05

Quelle désolation de voir cette horreur:
if(mysql_query("INSERT INTO".$Mysql['table']." (username, password, mail) VALUES ('".$_POST['username']."', '".sha1($_POST['password'])."', '"$_POST['mail']."")) echo 'Enregistré!';
Ca serait plus clair ains (en ajoutant les conseils sur real_escape ou en testant au moins le nom
$table = $Mysql['table'];
$username = $_POST['username'];
$pass = sha1($_POST['password']); //cf infra
$mail = $_POST['mail'];
$requete = "INSERT INTO $table (`username`, password`, `mail`) VALUES('$username','$pass' , '$mail')";
$resultat = mysql_query($requete);
if ($resultat == false)
{
	echo mysql_error();
}
else
{
}
//doc officielle : It is not recommended to use this function to secure passwords, due to the fast nature of this hashing algorithm. See here for details.
http://fr2.php.net/manual/fr/faq.passwo ... s.fasthash
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD