Page 1 sur 1

warinig et erreur je n'arrive pas à voir pkoi

Posté : 25 juil. 2006, 20:04
par damaskinos
Bonjour et merci d'avance pour ceux qui prendront la peine de regarder.

J'ai une classe appelée fonction. J'ai ce warning qui revient tout le temps et je n'arrive pas à voir pkoi.
Warning: Unexpected character in input: ' in /home/blabla/www/blabla/fonction.php on line 68
. Cet wraning revient souvent et quand je refresh la page deux ou trois fois elle disparait. La j'ai cette erreur qui vient d'apparaitre aussi
Parse error: parse error, unexpected T_ELSEIF, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home/blabla/www/blabla/fonction.php on line 73
Je rafraichie la page et elle disparait aussi. :evil:

Voila le code
<?php
include "iptest.php";
include "connection.inc";

class fonction
{

	function fonction()
	{
	
	}
	
	function bonPrix($product)
	{
		
		$con = new connection("gourmedas");
		$fonc = new fonction();
		$devise = "";
		$tab_europe = array("GERMANY", "AUSTRIA", "BELGIUM", "SPAIN", "FINLAND", "FRANCE", "IRELAND", "ITALY", "LUXEMBOURG", "PORTUGAL", "NETHERLANDS", "GREECE");
		
		$name = $fonc->NameFromIp();
		
		if(strcmp($name,"CANADA")==0)
		{	
			$requete = "select priceCanadien from Products where productName = '$product'";
			$devise = "CAD";
			
		}
		elseif(in_array($name,$tab_europe))
		{
			$requete = "select priceEuro from Products where productName = '$product'";
			$devise = "EURO";
		}
		else
		{
			$requete = "select priceUs from Products where productName = '$product'";
			$devise = "USD";
		}
		
		
		$resultat = $con->execute($requete);
		list($prix) = mysql_fetch_row($resultat);
		return $prix." ".$devise;
		
	}//fin function
	
	function NameFromIp()
	{
	
		$ip = new iptest();
		$name = $ip->getCountry();
		return $name;
	}
	
	function languageByIp()
	{
		$fonc = new fonction();
		$name = $fonc->NameFromIp();
		$tab_langue = array();
		
		if(strcmp($name,"CANADA")==0)
		{	
			$langue = "français";
			array_push($tab_langue,"english",$langue);
			return $tab_langue;		
		}
		elseif(strcmp($name,"FRANCE")==0)
		// VOILA LA LIGNE 68
               {
			$langue = "français";
			array_push($tab_langue,$langue);
			return $tab_langue;	
		}
		elseif(strcmp($name,"GERMANY") == 0)
		{
			array_push($tab_langue,"german");
			return $tab_langue;	
			
		}
		elseif(strcmp($name,"ITALY") == 0)
		{
			array_push($tab_langue,"italian");
			return $tab_langue;	
			
		}
		elseif(strcmp($name,"SPAIN") == 0)
		{
			array_push($tab_langue,"spanish");
			return $tab_langue;	
			
		}
		else
		{
			array_push($tab_langue,"english");
			return $tab_langue;
			
		}
		
	
	} 
	
	function getMenu($langue)
	{
		$tab = array();
		$con = new connection("gourmedas");
		$sql = "SELECT * FROM Menu WHERE language = '$langue'";
		$resultat = $con->execute($sql);
		if (mysql_num_rows($resultat) != 0)
		{
			$ligne = mysql_fetch_object($resultat);
			array_push($tab, $ligne->menu1, $ligne->menu2, $ligne->menu3, $ligne->menu4, $ligne->menu5, $ligne->menu6, $ligne->menu7, $ligne->menu8);
		}
		return $tab;
	}
	
	function getSubMenu($langue)
	{
		$tab = array();
		$con = new connection("gourmedas");
		$sql = "SELECT * FROM Menu WHERE language = '$langue'";
		$resultat = $con->execute($sql);
		if (mysql_num_rows($resultat) != 0)
		{
			$ligne = mysql_fetch_object($resultat);
			array_push($tab, $ligne->submenu1, $ligne->submenu2, $ligne->submenu3, $ligne->submenu4, $ligne->submenu5, $ligne->submenu6, $ligne->submenu7, $ligne->submenu8);
		}
		return $tab;
	}
	
	function getGroupeCake($langue)
	{
		$tab = array();
		$con = new connection("gourmedas");
		$sql = "SELECT * FROM Cakes";
		$resultat = $con->execute($sql);
		if (mysql_num_rows($resultat) != 0)
		{
			while($ligne = mysql_fetch_object($resultat))
			array_push($tab,$ligne->$langue);
		}		
		return $tab;
	}
	
	function getGroupe($langue,$produit)
	{
		$tab = array();
		$con = new connection("gourmedas");
		$sql = "SELECT * FROM Chocoproduct WHERE language='$langue' AND productType='$produit'";
		$resultat = $con->execute($sql);
		if (mysql_num_rows($resultat) != 0)
		{
			$ligne = mysql_fetch_object($resultat);
			array_push($tab, $ligne->product1, $ligne->product2, $ligne->product3, $ligne->product4, $ligne->product5, $ligne->product6);
		}		
		return $tab;
	}
	
	function getDescription($langue,$page)
	{
		$tab = array();
		$con = new connection("gourmedas");
		$sql = "SELECT  Title1, Title2, SubTitle1,SubTitle2, Description1, Description2, Description3, Description4, Description5, Description6 FROM Page WHERE PageName = '$page' and Language = '$langue'";
		$resultat = $con->execute($sql);
		
				
		if (mysql_num_rows($resultat) != 0)
			{	
				$ligne = mysql_fetch_object($resultat);
				$tab["title1"] = $ligne->Title1;
				$tab["title2"] = $ligne->Title2;
				$tab["subtitle1"] = $ligne->SubTitle1;
				$tab["subtitle2"] = $ligne->SubTitle2;
				$tab["description1"] = $ligne->Description1;
				$tab["description2"] = $ligne->Description2;
				$tab["description3"] = $ligne->Description3;
				$tab["description4"] = $ligne->Description4;
				$tab["description5"] = $ligne->Description5;
				$tab["description6"] = $ligne->Description6;
				
			}
			
					return $tab;
	
	
	}
	
	function splitResultatTiret($string)
	{
		
		$tab = explode("-",$string);
		return $tab;
	
	}
	
	function splitResultatVirgule($string)
	{
		
		$tab = explode(",",$string);
		return $tab;
	
	}


} //fin class



?>
toute suggestion est accepté.

Posté : 27 juil. 2006, 12:38
par zigz4g
Salut.

Est-ce réellement du php5 ???
Le constructeur se fait comme ceci et les méthodes sont précédées par les mots clés 'public', 'private', 'protected' (c'est plus propre mais sinon ça marche) :
<?php
class MaClasse
{
    public function __construct()
    {
    }

    public function MaMethode()
    {
    }
}
?>
Dans ton code tu fais

Code : Tout sélectionner

$fonc = new fonction();
es-tu sur de toi ?
Tu créé un objet de ta classe dans ta classe. Est-ce bien ce que tu veux faire ?