[ PHP ] Parse error

Fermé
moti - 27 avril 2007 à 21:34
 _FrenzY_ - 30 avril 2007 à 00:09
Bonjour j'I un probleme avec mon code php et je ne trouve pas la raison de l'erreur.

J'ai l'erreur suivante:
Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in c:\program files\easyphp1-8\www\projet php\proto\fiche_cocktail.php on line 118

je cherche a lire plusieurs mots dans unn fichier texte et ils sont séparés par des virgules. voici mon code:


$tabfile=file("liste/".$_GET["nom"].".txt");
echo "<img src=\"images/ballet_lg.gif\" width=\"19\" height=\"18\" border=\"0\">";

$tabingre=(explode(',', $tabfile[2]));


$i=0;
while ($i<strlen($tabingre))
{
//ligne 118 echo "$tabingre[$1]";
$i+1;
}



svp aidé moi.

merci d'avance

1 réponse

ligne 118 :
echo "$tabingre[$1]"; 


Je pense qu'il faudrait écrire à la place de [$1], [$i] ; soit remplacer le chiffre 1 par la lettre i, c'est-à-dire le nom de ta variable $i.


Mais si je comprends bien,

$i=0; 
while ($i<strlen($tabingre)) 
{ 
     echo "$tabingre[$i]";
     $i+1;
} 

afficherait caractère par caractère le contenu du tableau $tabingre. Pourquoi ne pas afficher directement $tabingre en faisant

echo $tabingre;

à la place de tout ça ? En fait je vois que ce petit algo aurait une utilité en C...Cependant je ne vois pas son intéret en PHP ? Mais cela reste une remarque....
0
hé bien en fait ce n'est pas exactement sa. je t'explique:

j'ai un fichier texte avec plusieurs lignes. je vais lire le fichier texte et lire les informations d'une ligne précise.(ce bout de code est pas dans ce bout de script)

et dans cette ligne y a plusieurs mots que je veu affiché un après l'autre avec des retour a la ligne. et ces mots sont séparés par des virgules.

j'ai donc fait un explode pour pouvoir lire les mots 1 par 1 et les mettre dans un tableau.(ce tableau est $tabingre) voila.

merci pour ton aide sa a corrigé un probleme mais maintenan il me dit que la ligne 116(celle avec le while) a une erreur... si quelqu'un pourrait m'aidé sa serai simpa.
0
lol ^^

C'est justement ce strlen qui m'avait guidé à tort ^^

Effectivement, je vois maintenant ce que tu veux faire. $tabingre est un tableau de chaînes.

Et donc strlen() ne pourra pas s'appliquer sur $tabingre, puisqu'il ne peut s'appliquer que directement sur les chaînes. ( D'où mon erreur d'interprétation... )

Il faut donc plutôt utiliser une autre fonction qui va nous donner le nombre de chaînes contenues dans le tableau $tabingre.

Ce sera sizeof().

Remplace donc

while ($i<strlen($tabingre)) 

par
while ($i<sizeof($tabingre)) 

et le tour est joué
0
Ca ne marche pas ?...
0
Que le modo qui passe par là marque ce sujet [résolu] car il n'y a plus de problème maintenant... :p
0