Parse error: syntax error, unexpected T_STRIN

Fermé
tom10000 - Modifié par tom10000 le 26/03/2010 à 12:58
 le père - 28 mars 2010 à 15:51
Bonjour,
un petit souci avec mon code, voici l'erreur :

Parse error: syntax error, unexpected T_ELSE in /var/www/vhosts/site.com/httpdocs/classes/Product.php on line 1299

Les lignes concernées : ( en gras la 1299 )

if ($id_customer AND $carte=0) {
$price *= ((100 - Group::getReduction($id_customer))/100);
self::$_prices[$cacheId] = ($divisor AND $divisor != 'NULL') ? number_format($price/$divisor, $decimals, '.', '') : number_format($price, $decimals, '.', '');
return self::$_prices[$cacheId];
else ($id_customer AND $carte=1)
$price *= ((100 - Group::getReduction($id_customer)*0.5)/100);
self::$_prices[$cacheId] = ($divisor AND $divisor != 'NULL') ? number_format($price/$divisor, $decimals, '.', '') : number_format($price, $decimals, '.', '');
return self::$_prices[$cacheId];
}

Quelqu'un à une idée ?
Merci par avance :)

6 réponses

harderpod Messages postés 320 Date d'inscription dimanche 1 novembre 2009 Statut Membre Dernière intervention 22 avril 2014 50
26 mars 2010 à 13:03
un point virgule a la fin de ta commande ?
si c'est comme en C++ il te faut boucler ta commande par un point virgule, il y en a bien a toutes tes lignes sauf celle en gras.
tient moi au courant
0
Merci, mais ça ne fonctionne pas :s
0
Bonjour

Un else ne peut venir qu'immédiatement après l'instruction ou le bloc qui suit un if. Or, toi, ton else il est à l'intérieur du bloc ! Il faut une accolade } à la fin de la ligne qui précède le else.
De même else(condition) n'existe pas en php : c'est else { ou bien elseif (condition) {
Commence par corriger ces deux points.
Ensuite, vérifie tes conditions. Elles ne sont pas syntaxiquement incorrectes, mais il y a gros à parier qu'elles ne font pas ce que tu veux. Pour mémoire, la comparaison c'est = et non pas ==.
0
Non, c'est le contraire ! La comparaison c'est ==, pas = !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Ok,

donc, que faudrait-il à mon code :

if ($id_customer AND $carte==0) {
$price *= ((100 - Group::getReduction($id_customer))/100);}
else { ($id_customer AND $carte==1)
$price *= ((100 - Group::getReduction($id_customer)*0.5)/100);

self::$_prices[$cacheId] = ($divisor AND $divisor != 'NULL') ? number_format($price/$divisor, $decimals, '.', '') : number_format($price, $decimals, '.', '');
return self::$_prices[$cacheId];
}
}
( j'ai déclaré une fonction un peu plus haut )
pour qu'il marche ?

Sachant qu'actuellement j'ai une erreur :

Parse error: syntax error, unexpected T_VARIABLE in /var/www/vhosts/pechere.webstockage.com/httpdocs/classes/Product.php on line 1295

soit :

$price *= ((100 - Group::getReduction($id_customer)*0.5)/100);

?


Merci bcp pour vos contributions qui me permettent de mieux comprendre le code !
0
non, ton erreur n'est pas sur la ligne
$price *= ((100 - Group::getReduction($id_customer)*0.5)/100);
mais sur la ligne
else { ($id_customer AND $carte==1)
re-vérifie
ce else est incorrect,
Je t'ai dit que c'était
else {
ou bien
elseif (condition) {
et toi tu fais
else { (condition)
0