IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[POO] erreur ? mais quelle erreur ? [Fait]


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 43
    Points : 42
    Points
    42
    Par défaut [POO] erreur ? mais quelle erreur ?
    Bonjour à tous,

    Désolé le titre n'est pas trés explicite mais voilà je n'ai pas l'habitude de la POO.
    LE code suivant est issu d'un livre et me renvoie l'erreur :
    Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home.10.21/idfsyusw/www/backoffice/ajax/drag/taskslist.class.php on line 11
    La ligne 11 est " private $mMysqli; "
    N'ayant jamais utilisé "private" et après quelques recherches, quelqu'un pourrait-il me dire d'où vient l'erreur. Je n'ai rien touché au code, c'est bien le code source fourni par l'auteur.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
     
    // load error handler and database configuration
    require_once ('error_handler.php');
    require_once ('config.php');
     
    // This class builds a tasks list and 
    // performs add/delete/reorder actions on it
    class TasksList
    {
      // stored database connection
      private $mMysqli;
     
      // constructor opens database connection
      function __construct() 
      {   
        // connect to the database
        $this->mMysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD,
                                    DB_DATABASE);      
      }
     
      // destructor closes database connection  
      public function __destruct() 
      {
        $this->mMysqli->close();
      }
     
      // Builds the tasks list
      public function BuildTasksList()
      {
        // initialize output
        $myList = '';
        // build query
        $result = $this->mMysqli->query('SELECT * FROM tasks ' . 
                                        'ORDER BY order_no ASC');
        // build task list as <li> elements
        while ($row = $result->fetch_assoc()) 
        { 
          $myList .= '<li id="' . htmlentities($row['id']) . '">' . 
                     htmlentities($row['description']) . '</li>';
        }
        // return the list
        return $myList;
      }
     
      // Handles the server-side data processing
      public function Process($content, $action)
      {
        // perform action requested by client
        switch($action)
        {
          // Reorder task list
          case 'updateList':
            // retrieve update details
            $new_order = explode('_', $content);
            // update list
     
            for ($i=0; $i < count($new_order); $i++)
            {
              // escape data received from client
              $new_order[$i] = 
                          $this->mMysqli->real_escape_string($new_order[$i]);
              // update task
              $result = $this->mMysqli->query('UPDATE tasks SET order_no="' . 
                                 $i . '" WHERE id="' . $new_order[$i] . '"');
            }
            $updatedList = $this->BuildTasksList();
            return $updatedList;
            break;
     
          // Add a new task
          case 'addNewTask':
            // escape input data
            $task = trim($this->mMysqli->real_escape_string($content));
            // continue only if task name is not null
            if ($task)
            {
              // obtain the highest order_no
              $result = $this->mMysqli->query('SELECT (MAX(order_no) + 1) ' . 
                                              'AS order_no FROM tasks');
              $row = $result->fetch_assoc();
              // if the table is empty, order_no will be null
              $order = $row['order_no'];          
              if (!$order) $order = 1;
              // insert the new task as the bottom of the list
              $result = $this->mMysqli->query
                              ('INSERT INTO tasks (order_no, description) ' . 
                               'VALUES ("' . $order . '", "' . $task . '")');
              // return the updated tasks list
              $updatedList = $this->BuildTasksList();
              return $updatedList;
            }
            break;
     
          // Delete task
          case 'delTask':
            // escape input data
            $content = trim($this->mMysqli->real_escape_string($content));
            // delete the task
            $result = $this->mMysqli->query('DELETE FROM tasks WHERE id="' . 
                                            $content . '"');
            $updatedList = $this->BuildTasksList();
            return $updatedList;
            break;
        }
      }
    }
    Merci

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Vous devez avoir une version 5 de PHP or vous semblez en posséder une de version 4. Faites la vérification avec la fonction phpinfo (ou autres).

    Les cours de POO, vous verrez ainsi où réside les différences, le cas échéant.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 43
    Points : 42
    Points
    42
    Par défaut
    Effectivement c'est bien la version 4 chez OVH. Je vais jeter un coup d'oeil aux cours.

    Merci

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    OVH doit vous proposer les deux versions : http://guides.ovh.com/Php5ChezOvh et http://guides.ovh.com/ConfigPhp

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [2008] Utilitaire BCP en erreur mais fichier erreur vide - gerer code retour ?
    Par Linconnu dans le forum MS SQL Server
    Réponses: 0
    Dernier message: 27/05/2015, 23h18
  2. aucun erreur mais output erreur
    Par domxaline dans le forum Débuter avec Java
    Réponses: 6
    Dernier message: 03/03/2014, 16h44
  3. [MySQL] Erreur d'argument sur une ligne mais quelle
    Par spirou34fr dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 10/01/2007, 07h24
  4. Réponses: 7
    Dernier message: 30/10/2005, 12h54
  5. Réponses: 4
    Dernier message: 30/04/2004, 13h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo