[PHP] Unexpected T_ECHO

Résolu/Fermé
fredo78310 Messages postés 64 Date d'inscription lundi 16 juin 2008 Statut Membre Dernière intervention 10 novembre 2009 - 16 juin 2008 à 12:02
fredo78310 Messages postés 64 Date d'inscription lundi 16 juin 2008 Statut Membre Dernière intervention 10 novembre 2009 - 16 juin 2008 à 14:31
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...
A voir également:

3 réponses

Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
16 juin 2008 à 12:39
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
0
fredo78310 Messages postés 64 Date d'inscription lundi 16 juin 2008 Statut Membre Dernière intervention 10 novembre 2009 5
16 juin 2008 à 13:24
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...
0
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
16 juin 2008 à 13:48
Alors là, j'avoue que je ne comprends pas...
Est-ce que tu as des sorties "echo" avant ce passage dans ton script ?
0
fredo78310 Messages postés 64 Date d'inscription lundi 16 juin 2008 Statut Membre Dernière intervention 10 novembre 2009 5
16 juin 2008 à 14:03
Pas un seul... D'où mon incompréhension ;)
0
fredo78310 Messages postés 64 Date d'inscription lundi 16 juin 2008 Statut Membre Dernière intervention 10 novembre 2009 5
16 juin 2008 à 14:31
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 !!!
0