Probleme avec : Parse error: syntax error

Résolu/Fermé
nickleus - 16 janv. 2008 à 19:39
 nickleus - 16 janv. 2008 à 20:22
Bonjour,
comme l'indique le titre, j'ai probleme de syntax :
Parse error: syntax error, unexpected '}' in 'adresse du doc' on line 131.

j'ai beau chercher sur la ligne indiqué et les lignes précédentes pour éventuellement trouver un point vigule oublié, ou une accolade pas refermer correctement je ne trouve pas.

je vous donne les denière ligne du code car je croix que l'erreur se trouve dans ces lignes :
<?php
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "record")) {

...... ICI CE TROUVE DU SCRIPT.......

$mysql_tables_exists = "SHOW TABLES FROM $database_organisation";
$result = mysql_query($mysql_tables_exists);
while ($name_tables = mysql_fetch_row($result)){
if($name_tables[0]==$parrain){$i=1;}}
if($i==0)
{
$branche1_new=$i;
mysql_select_db($database_organisation, $organisation);
$mysql_create_table = "CREATE TABLE `$parrain` ( `id` int(255) NOT NULL auto_increment, `user_id` varchar(13) default NULL, `branche2` int(255) default NULL, `niveaux` int(255) default NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1" ;
$mysql_request_create = mysql_db_query($database_organisation, $mysql_create_table) or die(mysql_error());
mysql_free_result($result);}
}
else
{

for($id=1; $id<=$totalRows_localisation_reseau; $id++){

mysql_select_db($database_db, $db);
$query_localisation = "SELECT * FROM localisation_reseau WHERE id = '$id'";
$localisation = mysql_query($query_localisation, $db) or die(mysql_error());
$row_localisation = mysql_fetch_assoc($localisation);
$totalRows_localisation = mysql_num_rows($localisation);
$LocalisId = $row_localisation['localisation'];
mysql_free_result($localisation);

$IDp=substr($LocalisId,13,13);
$IDb=substr($LocalisId,26);

if($parrain==$IDp){$tableau_branche_max[]=$IDb;}}

$resultat=count($tableau_branche_max)-1;
$branche1_new=$tableau_branche_max[$resultat]+1;
}

$insertSQL = sprintf("INSERT INTO $parrain (user_id, branche2, niveaux) VALUES (%s,%s,%s)",
GetSQLValueString($IDf_new, "text"),
GetSQLValueString($branche1_new, "int"),
GetSQLValueString($niveaux, "int"));
mysql_select_db($database_organisation, $organisation);
$Result3 = mysql_query($insertSQL, $organisation) or die(mysql_error());
echo $Result3;
}
?>

comme 2 serveaux vallent mienx qu'un, j'espere que le votre sera plus performant que le mien.

En espérent être compris, je vous remercie d'avance pour votre aide.

3 réponses

bbar Messages postés 436 Date d'inscription mercredi 27 septembre 2006 Statut Membre Dernière intervention 31 octobre 2008 140
16 janv. 2008 à 19:57
salut,
peux-tu indiquer quelle est la ligne 131, stp ? par ailleurs, qd il te donne un numéro de ligne pour ce genre de pb, la ponctuation manquante (ou de trop) est généralement plus haut
0
voici ou ce situe la ligne ...

$insertSQL = sprintf("INSERT INTO $parrain (user_id, branche2, niveaux) VALUES (%s,%s,%s)",
GetSQLValueString($IDf_new, "text"),
GetSQLValueString($branche1_new, "int"),
GetSQLValueString($niveaux, "int"));
mysql_select_db($database_organisation, $organisation);
$Result3 = mysql_query($insertSQL, $organisation) or die(mysql_error());
echo $Result3;
} <--------LIGNE 131
?>
0
bbar Messages postés 436 Date d'inscription mercredi 27 septembre 2006 Statut Membre Dernière intervention 31 octobre 2008 140
16 janv. 2008 à 20:12
ok, pour ce que je peux en voir (sans le script manquant), cette accolade est en trop. Vérifie en utilisant notepad++ (gratuit) : lorsque tu sélectionne une accolade ou une parenthèse, il te la met en rouge, ainsi que celle associée. Tu trouveras comme ça celle qui n'a rien à faire là
0
merci inffffffiiiiiniment pour l'astuce je connaissait notepad++ mais je ne l'utilise jamais cette fonction de mettre en rouge les () et {} en rouge est super.


autrement pour info l'erreur etait bien un } en trop mais la ligne 98:

$mysql_tables_exists = "SHOW TABLES FROM $database_organisation";
$result = mysql_query($mysql_tables_exists);
while ($name_tables = mysql_fetch_row($result)){
if($name_tables[0]==$parrain){$i=1;}}
if($i==0)
{
$branche1_new=$i;
mysql_select_db($database_organisation, $organisation);
$mysql_create_table = "CREATE TABLE `$parrain` ( `id` int(255) NOT NULL auto_increment, `user_id` varchar(13) default NULL, `branche2` int(255) default NULL, `niveaux` int(255) default NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1" ;
$mysql_request_create = mysql_db_query($database_organisation, $mysql_create_table) or die(mysql_error());
mysql_free_result($result);}
} <-------------LIGNE 98 c'est l'accolade en trop
else
{


j'utilise dream et je voulais savoir si il y avait la meme fonction que dans notepad++ pour le systeme de mise en couleur des ( ) et {} ?
0