erreur_code

gaga
Invité n'ayant pas de compte PHPfrance

09 juin 2012, 02:32

bonjour,
jè ecri un code en php, son exécution me donne une erreur bizzare du genre:

Parse error: syntax error, unexpected $end in C:\EasyPHP-5.3.9\www\e-commerce_final\panier.php on line 58

le code est le suivant:

<?php session_start(); ?>

<?php
// Création du panier
function newPanier(){
if (!isset($_SESSION['panier'])){
$_SESSION['panier']=array();
$_SESSION['panier']['nom']=array();
$_SESSION['panier']['origine']=array();
$_SESSION['panier']['prix']=array();
$_SESSION['panier']['quantite']=array();
}
return true;
}

// ajout de produits au panier
function ajoutProduit($nomProduit,$origineProduit,$prixProduit,$quantiteProduit){

// si le panier existe
if(newPanier()) {

// si le produit existe dejà => ajout de la qté seule
$positionProduit=array_search($nomProduit,$origineProduit,$_SESSION['panier']['nomProduit'],$_SESSION['panier']['origineProduit']);

if ($positionProduit !==false){
$_SESSION['panier']['quantiteProduit'][$positionProduit] +=$quantiteProduit;
}
else {
// sinon on ajoute le produit
array_push($_SESSION['panier']['nomProduit'],$nomProduit);
array_push($_SESSION['panier']['origineProduit'],$origineProduit);
array_push($_SESSION['panier']['prixProduit'],$prixProduit);
array_push($_SESSION['panier']['quantiteProduit'],$quantiteProduit);
}
}

else {
echo "une erreur est survenue,veuillez contacter l'administrateur";
}


// Calcul du montant total du panier prix*article
function prixTotal(){
//int $i;
$total=0;

for($i=0;$i<count($_SESSION['panier']['nomProduit']);$i++){

if ($livraison=='domicile'){
$total +=($_SESSION['panier']['quantiteProduit'][$i]*$_SESSION['panier'][prixProduit][$i]) + 5;
}
else {
$total +=($_SESSION['panier']['quantiteProduit'][$i])*($_SESSION['panier'][prixProduit][$i]);
}
}
return total;

?>

quelqu'un pourrait m'aider?

visiteurvvv
Invité n'ayant pas de compte PHPfrance

09 juin 2012, 05:20

bjr
tu mets a la fin
return $total;

Mammouth du PHP | 2278 Messages

09 juin 2012, 08:33

si ton code était correctement présenté, tu verrais plus facilement que, en plus de total pour $total, il manque une accolade à la fin de:
	// Calcul du montant total du panier prix*article
	function prixTotal()
	{
		//int $i;
		$total=0;

		for($i=0;$i<count($_SESSION['panier']['nomProduit']);$i++)
		{
			if ($livraison=='domicile')
			{
				$total +=($_SESSION['panier']['quantiteProduit'][$i]*$_SESSION['panier'][prixProduit][$i]) + 5;
			}
			else 
			{
				$total +=($_SESSION['panier']['quantiteProduit'][$i])*($_SESSION['panier'][prixProduit][$i]);
			}
		}
		return total;
      }//accolade manquante
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

gaga
Invité n'ayant pas de compte PHPfrance

10 juin 2012, 01:16

j'ai fai ce ke vs m'avez proposé mais bizzarement jè la mm erreur....et je ne voi tjrspa où ça pe etre.

Eléphant du PHP | 75 Messages

10 juin 2012, 01:20

Tu pourrais éviter le langage sms non ?
On est pas obligé de décortiquer l’œil pour comprendre ce que tu dis ^^

Tu as toujours la même erreur ?

gaga
Invité n'ayant pas de compte PHPfrance

10 juin 2012, 01:42

oui, j'ai la même erreur.

ViPHP
xTG
ViPHP | 7331 Messages

10 juin 2012, 09:52

Postes nous ton code modifié.

Mammouth du PHP | 2278 Messages

10 juin 2012, 09:58

bonjour,
jè ecri un code en php, son exécution me donne une erreur bizzare du genre:

Parse error: syntax error, unexpected $end in C:\EasyPHP-5.3.9\www\e-commerce_final\panier.php on line 58

le code est le suivant:

<?php session_start(); ?>

<?php
// Création du panier
function newPanier()
{
if (!isset($_SESSION['panier']))
{
$_SESSION['panier']=array();
$_SESSION['panier']['nom']=array();
$_SESSION['panier']['origine']=array();
$_SESSION['panier']['prix']=array();
$_SESSION['panier']['quantite']=array();
}
return true;
} // fin de fonction

// ajout de produits au panier
function ajoutProduit($nomProduit,$origineProduit,$prixProduit,$quantiteProduit)
{


if(newPanier())//____________________________________________________________________ si le panier existe
{

// si le produit existe dejà => ajout de la qté seule
$positionProduit = array_search($nomProduit,$origineProduit,$_SESSION['panier']['nomProduit'],$_SESSION['panier']['origineProduit']);

if ($positionProduit !==false) //________________________________________ position !=false
{ //2
$_SESSION['panier']['quantiteProduit'][$positionProduit] +=$quantiteProduit;
}
else //__________________________________________________________position false
{
// sinon on ajoute le produit
array_push($_SESSION['panier']['nomProduit'],$nomProduit);
array_push($_SESSION['panier']['origineProduit'],$origineProduit);
array_push($_SESSION['panier']['prixProduit'],$prixProduit);
array_push($_SESSION['panier']['quantiteProduit'],$quantiteProduit);
} //____________________________________________________________ fin de position
}
else //________________________________________________________________________panier inexistant
{
echo "une erreur est survenue,veuillez contacter l'administrateur";
} //__________________________________________________________________________ fin de panier


// Calcul du montant total du panier prix*article


function prixTotal()
{

//int $i;
$total=0;

for($i=0;$i<count($_SESSION['panier']['nomProduit']);$i++)
{

if ($livraison=='domicile') // domicile
{
$total +=($_SESSION['panier']['quantiteProduit'][$i]*$_SESSION['panier'][prixProduit][$i]) + 5;
}
else // pas domicile
{
$total +=($_SESSION['panier']['quantiteProduit'][$i])*($_SESSION['panier'][prixProduit][$i]);
} // fin de domicile
} // fin for
return $total;

?>

quelqu'un pourrait m'aider?
Si après avoir fermé la deuxième fonction, la même erreur persiste, c'est qu'il manque encore une accolade AVANT.
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

gaga
Invité n'ayant pas de compte PHPfrance

13 juin 2012, 13:10

Merci à tous...
l'erreur a étérésolue...en fait j'avais oublié de fermer "2" accolads.. :)

Mammouth du PHP | 2278 Messages

13 juin 2012, 16:22

Une fois de plus, l'indentation et les commentaires aident à s'y retrouver...
Moi je préfère
if (machin)
{
if (truc)
{

}
else
{
}
}
éventuellement quand c'est très compliqué:
if (machin)
{
if (truc):
else:
endif;
}

aux trucs à la mode depuis que C existe:
if (truc){
}
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD