Parse error: syntax error, unexpected T_STRIN

kris72 Messages postés 6 Statut Membre -  
kris72 Messages postés 6 Statut Membre -
Bonjour,
j'ai une erreur mais je n'arrive pas a la résoudre :
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /homez.***/******/www/******/*******/****/****/****.php on line 27

le line 27 est private $x;
et le code complete

<?php
/* Libchart - PHP chart library
* Copyright (C) 2005-2008 Jean-Marc Trémeaux (jm.tremeaux at gmail.com)
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* Point of coordinates (X,Y).
* The value of X isn't really of interest, but X is used as a label to display on the horizontal axis.
*
* @author Jean-Marc Trémeaux (jm.tremeaux at gmail.com)
*/
class Point {
private $x;
private $y;

/**
* Creates a new sampling point of coordinates (x, y)
*
* @param integer x coordinate (label)
* @param integer y coordinate (value)
*/
public function Point($x, $y) {
$this->x = $x;
$this->y = $y;
}

/**
* Gets the x coordinate (label).
*
* @return integer x coordinate (label)
*/
public function getX() {
return $this->x;
}

/**
* Gets the y coordinate (value).
*
* @return integer y coordinate (value)
*/
public function getY() {
return $this->y;
}
}
?>

6 réponses

Reivax962 Messages postés 3742 Statut Membre 1 011
 
Bonjour,

Quelle version de php utilises-tu ? Les mots clé de visibilité (« private », « public », « protected ») on été introduit en php 5. Donc si tu es sous php4, remplace-les par « var »

Xavier
0
kris72 Messages postés 6 Statut Membre
 
Bonjour,
merci de votre réponse rapide
j'utilise php4 et comme vous m'avez expliqué j'ai changé « private », « public », « protected » en var mais maintenant
l'erreur affichée est :

Parse error: syntax error, unexpected T_FUNCTION, expecting T_VARIABLE in /****.***/***/www/*****/****/****/****/****.php on line 36

la ligne 36 est :
var function Point($x, $y) {

et le code complet est :

<?php
/* Libchart - PHP chart library
* Copyright (C) 2005-2008 Jean-Marc Trémeaux (jm.tremeaux at gmail.com)
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* Point of coordinates (X,Y).
* The value of X isn't really of interest, but X is used as a label to display on the horizontal axis.
*
* @author Jean-Marc Trémeaux (jm.tremeaux at gmail.com)
*/
class Point {
var $x;
var $y;

/**
* Creates a new sampling point of coordinates (x, y)
*
* @param integer x coordinate (label)
* @param integer y coordinate (value)
*/
var function Point($x, $y) {
$this->x = $x;
$this->y = $y;
}

/**
* Gets the x coordinate (label).
*
* @return integer x coordinate (label)
*/
var function getX() {
return $this->x;
}

/**
* Gets the y coordinate (value).
*
* @return integer y coordinate (value)
*/
var function getY() {
return $this->y;
}
}
?>

merci d'avance pour votre aide
0
Reivax962 Messages postés 3742 Statut Membre 1 011
 
Ah, c'est ma faute, je n'avais pas tout lu.
Les var doivent être mis devant les déclarations de variables (var $x;).
Devant les déclarations de fonction, il ne faut rien mettre.
Donc
« var function Point($x, $y) { »
devient
« function Point($x, $y) { »

Désolé du contre-temps...

Xavier
0
kris72 Messages postés 6 Statut Membre
 
merci encore pour votre réponse rapide.
Je suis pas sorti de l'auberge parce que j'ai encore des problèmes dans les autre fichiers comme :

Parse error: syntax error, unexpected T_VAR in /****.***/***/www/*****/****/****/****/****.php on line 58
et la ligne est:

if ($dataSet instanceof XYDataSet) {

et les codes sont :

<?php
/* Libchart - PHP chart library
* Copyright (C) 2005-2008 Jean-Marc Trémeaux (jm.tremeaux at gmail.com)
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* Object representing the bounds of a dataset (its minimal and maximal values) on its vertical axis.
* The bounds are automatically calculated from a XYDataSet or XYSeriesDataSet.
* Default (calculated) bounds can be overriden using the setLowerBound() and setUpperBound() methods.
*
* @author Jean-Marc Trémeaux (jm.tremeaux at gmail.com)
* Created on 25 july 2007
*/
class Bound {
/**
* Manually set lower bound, overrides the value calculated by computeBound().
*/
var $lowerBound = null;

/**
* Manually set upper bound, overrides the value calculated by computeBound().
*/
var $upperBound = null;

/**
* Computed min bound.
*/
var $yMinValue = null;

/**
* Computed max bound.
*/
var $yMaxValue = null;

/**
* Compute the boundaries on the axis.
*
* @param dataSet The data set
*/
function computeBound($dataSet) {
// Check if the data set is empty
$dataSetEmpty = true;
$serieList = null;
var if ($dataSet instanceof XYDataSet) {
$pointList = $dataSet->getPointList();
$dataSetEmpty = count($pointList) == 0;

if (!$dataSetEmpty) {
// Process it as a serie
$serieList = array();
array_push($serieList, $dataSet);
}
} else if ($dataSet instanceof XYSeriesDataSet) {
$serieList = $dataSet->getSerieList();
if (count($serieList) > 0) {
$serie = current($serieList);
$dataSetEmpty = count($serie) == 0;
}
} else {
die("Error: unknown dataset type");
}

// If the dataset is empty, default some bounds
$yMin = 0;
$yMax = 1;
if (!$dataSetEmpty) {
// Compute lower and upper bound on the value axis
unset($yMin);
unset($yMax);

foreach ($serieList as $serie) {
foreach ($serie->getPointList() as $point) {
$y = $point->getY();

if (!isset($yMin)) {
$yMin = $y;
$yMax = $y;
} else {
if ($y < $yMin) {
$yMin = $y;
}

if ($y > $yMax) {
$yMax = $y;
}
}
}
}
}

// If user specified bounds and they are actually greater than computer bounds, override computed bounds
if (isset($this->lowerBound) && $this->lowerBound < $yMin) {
$this->yMinValue = $this->lowerBound;
} else {
$this->yMinValue = $yMin;
}

if (isset($this->upperBound) && $this->upperBound > $yMax) {
$this->yMaxValue = $this->upperBound;
} else {
$this->yMaxValue = $yMax;
}
}

/**
* Getter of yMinValue.
*
* @return min bound
*/
function getYMinValue() {
return $this->yMinValue;
}

/**
* Getter of yMaxValue.
*
* @return max bound
*/
function getYMaxValue() {
return $this->yMaxValue;
}

/**
* Set manually the lower boundary value (overrides the automatic formatting).
* Typical usage is to set the bars starting from zero.
*
* @param double lower boundary value
*/
function setLowerBound($lowerBound) {
$this->lowerBound = $lowerBound;
}

/**
* Set manually the upper boundary value (overrides the automatic formatting).
*
* @param double upper boundary value
*/
function setUpperBound($upperBound) {
$this->upperBound = $upperBound;
}
}
?>

merci encore pour votre aide et je pense que je vais encore poser des questions sur ce probleme.
cordialement

kris
0

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

Posez votre question
Reivax962 Messages postés 3742 Statut Membre 1 011
 
Bon, là, je pense qu'il va falloir prendre le problème à l'envers.
Manifestement, tu utilises un script écrit pour php5, et si on doit tout rendre compatible php4, on n'est pas sorti.

Est-ce que tu ne pourrais pas plutôt mettre à jour ton serveur php ?

Xavier
0
kris72 Messages postés 6 Statut Membre
 
Bonjour, merci encore pour votre réponse

Mon serveur est compatible php5
j'ai remis tout les fichiers sur le serveur, mais j'ai toujours le même problème.

Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /homez.***/******/www/******/*******/****/****/****.php on line 27

le line 27 est private $x;

et le code complet est:

<?php
/* Libchart - PHP chart library
* Copyright (C) 2005-2008 Jean-Marc Trémeaux (jm.tremeaux at gmail.com)
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* Point of coordinates (X,Y).
* The value of X isn't really of interest, but X is used as a label to display on the horizontal axis.
*
* @author Jean-Marc Trémeaux (jm.tremeaux at gmail.com)
*/
class Point {
private $x;
private $y;

/**
* Creates a new sampling point of coordinates (x, y)
*
* @param integer x coordinate (label)
* @param integer y coordinate (value)
*/
public function Point($x, $y) {
$this->x = $x;
$this->y = $y;
}

/**
* Gets the x coordinate (label).
*
* @return integer x coordinate (label)
*/
public function getX() {
return $this->x;
}

/**
* Gets the y coordinate (value).
*
* @return integer y coordinate (value)
*/
public function getY() {
return $this->y;
}
}
?>

est ce que vous pouvez m'expliquer d'ou vient le problème, je n'y comprends plus rien.
Merci de votre aide
cordialement
kris
0