Parse error: syntax error, unexpected '['

Résolu
JuJu] Messages postés 33 Statut Membre -  
Ricky38 Messages postés 5776 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'utilise une classe en PHP pour gérer des joueurs.
Dans cette classe j'ai une méthode qui charge un joueur de ma BdD dans mon joueur que j'ai crée via
$j = new Joueur();

J'utilise la classe PDO pour ma connexion.
Voici le code de la méthode :

function LoadJoueur($id)
	{
		include '../JuJu/connexion.php';
		$load = "SELECT * FROM joueur WHERE id_joueur='".$id."'";
		$res = $conn->query($load);
		foreach($res as $info)
		{
			$this->id = $id;
			$this->nom = info["nom_joueur"];
			$this->prenom = info["prenom_joueur"];
			$this->sexe = info["sexe_joueur"];
			$this->age = info["age_joueur"];
		}
	}


Lorsque j'inclus ma page où est contenue ma classe sur une page normale, comme sur mon index par exemple. J'obtiens l'erreur suivante :

Parse error: syntax error, unexpected '[' in ****\***\cl_joueur.php on line 50

La ligne 50 est celle que j'ai mis en gras.

Sur ma page d'index j'ai ça :
<?php
include '../JuJu/connexion.php'; 
include_once 'cl_joueur.php';
$j = new Joueur();
$j->CreerJoueur();
$j->toString();
$j->SaveJoueur(1);
?>


Comme vous le constatez je n'utilise pas la fonction LoadJoueur() mais l'erreur persiste. Comment puis-je la résoudre ?!

Merci d'avance !
Configuration: Windows XP
Firefox 3.0.13

5 réponses

  1. zoby44 Messages postés 868 Statut Membre 199
     
    Salut, Ricky a raison.
    En poo, on utilise bien $this->attribut, mais il faut quand même mettre un $ devant info[], comme tu l'as fait pour le $this->id = $id;
    1
  2. Ricky38 Messages postés 5776 Date d'inscription   Statut Contributeur Dernière intervention   1 463
     
    Salut,

    je suis p-e dans le champs mais est-ce que par hasard il te manquerait un $ devant tes variables ?

                            $this->id = $id;
    			$this->nom = $info["nom_joueur"];
    			$this->prenom = $info["prenom_joueur"];
    			$this->sexe = $info["sexe_joueur"];
    			$this->age = $info["age_joueur"];
    0
  3. JuJu] Messages postés 33 Statut Membre 7
     
    Malheureusement non, quand tu programme en objet sur PHP tu utilise $this->attribut
    Donc je sèche un peu à vrai dire ! :D
    0
  4. Alain_42 Messages postés 5413 Statut Membre 904
     
    je suis d'accord avec Ricky38

    $info["nom_joueur"];
    est un array donc il faut bien le $ devant

    l'attribut c'est nom dans ce cas

    si tu mets cette ligne en commentaires tu auras l'erreur a la ligne suivante
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. JuJu] Messages postés 33 Statut Membre 7
     
    J'ai donc oublié le $ devant info...

    Merci à tous ! Je passais dessus à chaque fois sans la voir cette erreur...
    0
    1. Ricky38 Messages postés 5776 Date d'inscription   Statut Contributeur Dernière intervention   1 463
       
      fait plaisirs ;)
      0