Syntax error, unexpected T_CLASS

barbizoa Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je suis débutant en PHP et dans mon fichier database.class.php j'ai une erreur que je n'arrive pas à corriger. Merci de me donner un coup de main.
Le code:
<?php
/**********************************************************************
Database.class.php
Generated by STRUCTY 2016.11.25 16:22:25.
Copyright 2011 Structy, Fr�d�ric Aebi. All rights reserved.


*
**
***
****
*****
******
*******
********
*********
**********
***********
************
*************
**************
***************
****************
*****************
******************
*******************
********************
*********************
**********************
***********************
************************
*************************
**************************
***************************
****************************
*****************************
******************************
*******************************
********************************
*********************************
**********************************
***********************************
************************************
*************************************
**************************************
***************************************
****************************************
*****************************************
******************************************
*******************************************
********************************************
*********************************************
**********************************************
***********************************************
************************************************
*************************************************
**************************************************
***************************************************
****************************************************
*****************************************************
******************************************************
*******************************************************
********************************************************
*********************************************************
**********************************************************
***********************************************************
************************************************************
*************************************************************
**************************************************************
***************************************************************
****************************************************************
*****************************************************************
******************************************************************
*******************************************************************
********************************************************************
*********************************************************************
**********************************************************************/

class Database {

public function Database() {
  $this->_conn = SPDO::getInstance();
 }

public function select($pQry = "") {
  $pdo = SPDO::getInstance();
  $result = $pdo->query($pQry);
  $row = array ();
  if (!empty ($result)) {
   $row = $result->fetchAll(PDO::FETCH_OBJ);
  }
  return $row;
 }

public function insert($pQry = "") {
  $pdo = SPDO::getInstance();
  $result = $pdo->execute($pQry);
  return $pdo->lastInsertId();
 }

public function delete($pQry = "") {
  $pdo = SPDO::getInstance();
  $result = $pdo->execute($pQry);
  return $result;
 }
 public function update($pQry = "") {
  $pdo = SPDO::getInstance();
  $result = $pdo->execute($pQry);
  return $result;
 }
}

class SPDO {

private $PDOInstance = null;
 private static $instance = null;
 private $exception;

private function __construct() {
  try {
   $this->PDOInstance = new PDO("mysql:host=".SERVER.";dbname=".BASE, USER, PASS);
  } catch (PDOException $e) {
   echo "Error connecting to MySQL!: ".$e->getMessage();
   exit();
  }
 }

public static function getInstance() {
  if (is_null(self::$instance)) {
   self::$instance = new SPDO();
  }
  return self::$instance;
 }

public function query($query) {
  return $this->PDOInstance->query($query);
 }

public function prepare($query) {
  return $this->PDOInstance->prepare($query);
 }

public function execute($query) {
  return $this->PDOInstance->exec($query);
 }

public function lastInsertId() {
  return $this->PDOInstance->lastInsertId();
 }

public function quote($query) {
  return $this->PDOInstance->quote($query);
 }

public function getException() {
  return $this->exception;
 }
}
  ?>

EDIT : Ajout des balises de code

3 réponses

Nessdarth Messages postés 36 Date d'inscription   Statut Membre Dernière intervention   3
 
Bonjour,

Je ne vois pas où se termine ton bloc de commentaire en début de fichier
0
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   1 011
 
Bonjour,

Pourrais-tu nous donner le message d'erreur COMPLET ? Avec le numéro de ligne, déjà, on saurait lequel des deux "class" pose problème.

D'une façon générale, quand on demande de l'aide sur un message d'erreur, on donne le message d'erreur !

Xavier
0
barbizoa Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour, le message d'erreur complet:
Parse error: syntax error, unexpected T_STRING in /vdir/www.regiepubniger.com/var/www/vhosts/www.regiepubniger.com/web/assets/config/Database.class.php on line 1
0
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   1 011
 
Ah, alors c'est T_STRING, pas T_CLASS ?
Ca change beaucoup les choses :)
Du coup c'est plutôt surprenant. On dirait qu'il y a un caractère qui l'embête sur la première ligne. Est-ce que tu peux afficher les caractères cachés dans ton éditeur, voir s'il y a un truc louche ? Voire, encore mieux, afficher ton fichier dans un éditeur hexadécimal qui permettra d'être sûr de tout voir...

Xavier
0
barbizoa Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   > Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention  
 
Merci pour ta réponse j'ai affiché le fichier dans un éditeur hexadécimal RAS. Le message est toujours :( ! ) Parse error: syntax error, unexpected T_STRING in /vdir/www.regiepubniger.com/var/www/vhosts/www.regiepubniger.com/web/assets/config/Database.class.php on line 1
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

Assure toi que ton fichier est encodé en utf8 sans BOM.
(a la limite, copie le contenu et colle le dans un nouveau fichier de cet encodage).
Pour voir l'encodage (ou le modifier) regarde ici : https://forums.commentcamarche.net/forum/affich-37584944-php-html-caracteres-accentues-et-l-utf8#1-verifiez-l-encodage-des-fichiers
0
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   1 011
 
Les BOM peuvent déclencher ce genre d'erreur ?
A priori ils ne devraient pas puisqu'ils sont placés avant la balise <?php, non ?
0