[PHP] syntax error, unexpected }
Résolu
Evan
-
vever -
vever -
Bonjour tous le monde!!
Mon probleme est le suivant :
Je suis passer de la version easyphp 1.6 -> à la version 5.3.2i (n_n)'
En gros :
Avant, pas de problème.
Maintenant j'ai sa :
J'ai bien verifier, je ne comprend pas pourtant j'ouvre et ferme bien l'ensemble de mes conditions.
Mon code fait à peu près 23000 lignes mais voici le bout qui plante :
Merci pour votre aide.
Mon probleme est le suivant :
Je suis passer de la version easyphp 1.6 -> à la version 5.3.2i (n_n)'
En gros :
Avant, pas de problème.
Maintenant j'ai sa :
PHP syntax error, unexpected }
J'ai bien verifier, je ne comprend pas pourtant j'ouvre et ferme bien l'ensemble de mes conditions.
Mon code fait à peu près 23000 lignes mais voici le bout qui plante :
if(isset($_POST['Montrer_Requete'])) { print'<input type="submit" name="Nouvelle_recherche_avancee" id="NRA" style="display:none">'; $controle=@mysql_query('SELECT PER_MATRICULE FROM personnel WHERE PER_LOGIN="' .$_COOKIE['LOGIN']. '" AND PER_MDP="' .$_COOKIE['MDP']. '"'); $DATA1 = mysql_fetch_array($controle); $desc_requ = mysql_query('DESCRIBE requete'); //On prend toutes les requetes qu'a enregistrer l'utilisateur $affichage_requete=mysql_query('SELECT * FROM requete WHERE PER_MATRICULE = "'.$DATA1['PER_MATRICULE'].'" ORDER BY NUM_REQU;'); if(@mysql_numrows($affichage_requete)!=0) { print'</br></br><div class="td_bleu"><font face="arial" color="#000066" size="3" ><b>Gestion des requetes</b></font></div>'; $i=0; for($ligne=0;$ligne<mysql_numrows($affichage_requete);$ligne++) { //On place les boutons de suppression en fonction des id et on ajoute un bouton de selection de ligne seul if($i==$ligne || $i==0) { if($ligne!=0) { print'</table>'; } print'</br><table border="1" cellspacing="0" cellpadding="0" width="auto" style="border: 0.5px;">'; print'<tr><td></td><td></td><td class="td_bleu"><font face="arial" color="#000066" size="1" > Groupe </font></td><td class="td_bleu"><font face="arial" color="#000066" size="1" > Ligne </font></td><td class="td_bleu"><font face="arial" color="#000066" size="1" > Num groupe </font></td><td class="td_bleu"><font face="arial" color="#000066" size="1" > Module </font></td><td class="td_bleu"><font face="arial" color="#000066" size="1" > Et / Ou </font></td><td class="td_bleu"><font face="arial" color="#000066" size="1" > Champ </font></td><td class="td_bleu"><font face="arial" color="#000066" size="1" > Opération </font></td><td class="td_bleu"><font face="arial" color="#000066" size="1" > Mot clé </font></td></tr>'; } // ligne _ Id _ NumGroupe plus_ ID _ Num_groupe print'<tr><td><div onclick="supp_requ(this)" class="supp" id="'.$ligne.'_'.mysql_result($affichage_requete, $ligne, 0).'_'.mysql_result($affichage_requete, $ligne, 1).'"></div></td><td><div class="plus" onclick="plus(this)" id="plus_'.mysql_result($affichage_requete, $ligne, 0).'_'.mysql_result($affichage_requete, $ligne, 1).'_'.$ligne.'"></div></td>'; if($i==$ligne || $i==0) { $i=$ligne; while(mysql_result($affichage_requete, $ligne, 1)==@mysql_result($affichage_requete, $i, 1)) { $i++; } $i=$i-$ligne; //On regroupe par module les ligne du tableau pour pouvoir selectionner une requete complete print'<td class="td_white" rowspan="'.$i.'"><div class="panier" onclick="panier(this)" id="panier_'.mysql_result($affichage_requete, $ligne, 1).'"></div></td>'; $i=$i+$ligne; } //On affiche les donnée a titre de visu $ligneplus = $ligne+1; print'<td class="td_white"><font face="arial" size="-2" > '.$ligneplus .' </font></td><td class="td_white"><font face="arial" size="-2" > '.mysql_result($affichage_requete, $ligne, 1) .' </font></td>'; for($colonne=3;$colonne<mysql_numrows($desc_requ);$colonne++) { print'<td class="td_white"><font face="arial" size="-2" > '.mysql_result($affichage_requete, $ligne, $colonne).' </font></td>'; } print'</tr>'; } ?> <script language="javascript"> function supp_requ(objet) { //on recupere la ligne et l'id a supprimer var valeur=objet.id; var decomp = valeur.split('_'); //on recupère le html de la div suppression contenant tous les id à supprimer var div = document.getElementById('suppression').innerHTML; //on enregistre l'id pour le supprimer apres validation de l'utilisateur var ligne= decomp[0]; ligne ++; // alert('<input type="hidden" name="Requ_A_Supp_'+ decomp[1] +'" value="'+ decomp[1] +'"><font face="arial" size="-2" > La ligne '+ ligne +' sera supprimer. </font>'); var divSuppression = document.getElementById('suppression').innerHTML = div + '<input type="hidden" name="Requ_A_Supp_'+ decomp[1] +'" value="'+ decomp[1] +'"><font face="arial" size="-2" > La ligne '+ ligne +' sera supprimer. </font><br>'; //on enleve le bouton supprimer de cette ligne objet.style.display = 'none'; objet.id= ""; } </script> <script language="javascript"> function panier(objet) { var valeur=objet.id; var decomp = valeur.split('_'); var div = document.getElementById('choix').innerHTML; var divchoix = document.getElementById('choix').innerHTML = div + '<input type="hidden" name="Group_'+ decomp[1] +'" value="'+ decomp[1] +'"><font face="arial" size="-2" > Le groupe '+ decomp[1] +' est ajouter à la recherche. </font><br>'; objet.style.display = 'none'; objet.id= ""; } </script> <script language="javascript"> function plus(objet) { var valeur=objet.id; var decomp = valeur.split('_'); var div = document.getElementById('choix').innerHTML; var ligne= decomp[3]; ligne ++; var divchoix = document.getElementById('choix').innerHTML = div + '<input type="hidden" name="plus_'+ decomp[1] +'" value="'+ decomp[1] +'"><font face="arial" size="-2" > Le ligne '+ ligne +' est ajouter à la recherche. </font><br>'; objet.style.display = 'none'; objet.id= ""; } </script> <?php } else { print'<script>alert("Vous n\'avez aucune recherche enregistrée.\nVous allez être rediriger sur une < Nouvelle recherche >.")</script>'; ?> <script language="javascript"> document.getElementById('NRA').click(); </script> <?php } print'<br>'; print'</table></br></br><div id="choix"><div id="suppression"></div></div><br><br>'; /////////////////////////////////////////// } // <-- C'est ici que sa plante // ///////////////////////////////////////////
Merci pour votre aide.
A voir également:
- [PHP] syntax error, unexpected }
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Cmos checksum error ✓ - Forum Carte-mère/mémoire
- Playback error reconnect in 3s (1/5) francais - Forum Box et Streaming vidéo
- Error 1962 ✓ - Forum PC fixe
9 réponses
Possible même si je trouve ça bizarre. Tu peux toujours tenter de regrouper toutes tes fonctions js en début de page mais garder tes appels à l'endroit où ils sont.
Bon enfaite il y avait un <? au lieu de <?php un tout petit peu plus haut =/. Donc sous 1.6 pas de soucie mais sous 5.3.2 bonjour les degats.
Unexpected } signifie que } est en trop mais ça n'as pas l'air d'être le cas ici. Est-ce que tu as quelque chose avant ou après ce que tu as noté?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
C'est peut être un détail mais je vois que tout tes "print" son collés aux "'", peut être que la nouvelle version de easyphp n'accepte pas cette syntaxe et préfère "print '".
Enfin c'est surement un détail '(-.-)
Enfin c'est surement un détail '(-.-)
Je vien d'essayer, ce n'est pas ça. Mais bonne idée quand même. ^_^
Je pense que je vai rester sur 1.6 ;)
Je pense que je vai rester sur 1.6 ;)
Je vien de remarquer qu'en supprimant les scripts Javascirpt l'erreur PHP n'y est plus.
J'en conclue que l'interpreteur ce goure avec les crochés de mes fonctions...
Qu'en pensez vous?
J'en conclue que l'interpreteur ce goure avec les crochés de mes fonctions...
Qu'en pensez vous?
C'est pas impossible.
Si ça te dérange tu peux modifier ton code php, pour l'adapter à une syntaxe sans accolades, cela existe en php :
https://www.php.net/manual/en/control-structures.alternative-syntax.php
avec quelque chose comme ça :
tu peux éviter tes accolades :)
Si ça te dérange tu peux modifier ton code php, pour l'adapter à une syntaxe sans accolades, cela existe en php :
https://www.php.net/manual/en/control-structures.alternative-syntax.php
avec quelque chose comme ça :
<?php if ($a == 5): ?> A is equal to 5 <?php endif; ?>
tu peux éviter tes accolades :)
J'ai mis les scripts en haut mais il semblerais que ce n'est même pas sa qui fait buger, mais plutot la répétion des
A en juger par sa :
NE BUG PAS
BUG
Je vai tenter ta methode Defouille
Merci pour toute vos réponses!!!
Problème Résolue !!
<?php ?>
A en juger par sa :
NE BUG PAS
print ' <script language="Javascript"> alert("Vous n\'avez aucune recherche enregistrée.\nVous allez être rediriger sur une < Nouvelle recherche >."); document.getElementById(\'NRA\').click(); </script> ';
BUG
print'<script>alert("Vous n\'avez aucune recherche enregistrée.\nVous allez être rediriger sur une < Nouvelle recherche >.")</script>'; ?> <script language="javascript"> document.getElementById('NRA').click(); </script> <?php
Je vai tenter ta methode Defouille
Merci pour toute vos réponses!!!
Problème Résolue !!