[PHP] Unexpected T_ECHO
Résolu
fredo78310
Messages postés
69
Statut
Membre
-
fredo78310 Messages postés 69 Statut Membre -
fredo78310 Messages postés 69 Statut Membre -
Bonjour, j'ai un petit soucis dans mon programme php, voici le bout de mon programme :
$var=substr($var, 0, (strlen($var) - 1));
$var=str_replace("\"\"", "''", $var);
L'erreur affichée sur la page est : Parse error: parse error, unexpected T_ECHO, expecting ',' or ';' in c:\program files\easyphp\www\appro\parser.php on line 233 (la 233e ligne est la 2e que j'ai donnée)
J'ai vu sur le net que l'erreur vient souvent d'un point-virgule oublié à la ligne précédente, mais ce n'est pas le cas ici donc je ne vois pas où est le bug...
$var=substr($var, 0, (strlen($var) - 1));
$var=str_replace("\"\"", "''", $var);
L'erreur affichée sur la page est : Parse error: parse error, unexpected T_ECHO, expecting ',' or ';' in c:\program files\easyphp\www\appro\parser.php on line 233 (la 233e ligne est la 2e que j'ai donnée)
J'ai vu sur le net que l'erreur vient souvent d'un point-virgule oublié à la ligne précédente, mais ce n'est pas le cas ici donc je ne vois pas où est le bug...
Configuration: Windows 2000 Firefox 2.0.0.14
3 réponses
-
Bonjour,
Il faudrait que tu nous donnes un peu plus de lignes du code précédent.
Genre les 10 lignes précédentes :)
Mais ce genre de choses peut remonter à très loin dans ton code !
Xavier-
while (!feof($fp2)) // On parcourt le fichier
{
//récupération d'un ligne de fichier
$ligne=fgets($fp2, 4096);
// chaque champ séparé par une tabulation est placé dans une case de $liste[]
$liste=explode($separateurTab, $ligne);
//Compte le nombre d'éléments sur une ligne
$result=count($liste);
if ($cpt> $numeroLigneDeb && $cpt <$numeroLigneMax)
{
/* si le libellé d'article n'est pas vide */
if (trim($liste[1]) !="")
{
$nbline=$indice + 1 + 1;
for ($i=0; $i <$result; $i++)
{
$var=trim($liste[1]);
/* on récupère la position éventuelle d'un caractère '"' dans la chaine */
$pos=strpos($var, "\"");
/* s'il n'y a pas de guillemets dans le libellé on le prend tel quel */
if ($pos===false)
{
$nomProduit[$indice]=$var;
}
/* sinon on fait un traitement pour remplacer les guillemets
* par 2 simples côtes:('')
*/
else
{
$var=substr($var, 1);
$var=substr($var, 0, (strlen($var) - 1));
$var=str_replace("\"\"", "''", $var);
$nomProduit[$indice]=$var;
}
......... Je ne mets pas la suite vu que le bug est avant...
-
-
Alors là, j'avoue que je ne comprends pas...
Est-ce que tu as des sorties "echo" avant ce passage dans ton script ? -
La grosse boulette : j'ai confondu la 233e ligne avec la 223e ligne... Désolé de t'avoir fait chercher pour rien...
Je travaille en PHP4 et c'est possible que je redemande d'autres choses... Je vérifierai au moins ça la prochaine fois...
Merci quand même !!!