tempo199
Messages postés6Date d'inscriptionjeudi 5 juin 2003StatutMembreDernière intervention 9 février 2007
-
9 févr. 2007 à 19:01
tempo199
Messages postés6Date d'inscriptionjeudi 5 juin 2003StatutMembreDernière intervention 9 février 2007
-
9 févr. 2007 à 21:22
Bonjour ou bonsoir à tous
Je suis programmeur php à mes heures et plutôt pas mauvais
cependant, je me met à peine aux notions objet de php et je rencontre une erreur que je ne comprends pas
Voici le code de ma classe :
<?php
class User
{
var $_id, $_login, $_password, $_email, $_birth, $_country, $_sexe, $_hobbys, $_description, $_inscription, $_vip, $_vip_date, $_points, $_public, $_active, $_try, $_connection, $_ip ;
//Constructeur
function User($id)
{
//Connexion à la DB
include "_connection.php";
//Requête sur l'id $Query "SELECT * FROM users WHERE id '".$id."'";
$Result = mysql_query($Query);
//On transforme le résultat en tableau
if($Datas = mysql_fetch_array($Result))
{
//Initialisation des variables
$this->_id = Datas['id'];
$this->_login = Datas['login'];
$this->_password = Datas['password'];
$this->_email = Datas['email'];
$this->_birth = Datas['birth'];
$this->_country = Datas['country'];
$this->_sexe = Datas['sexe'];
$this->_hobbys = Datas['hobbys'];
$this->_description = Datas['description'];
$this->_inscription = Datas['inscription'];
$this->_vip = Datas['vip'];
$this->_vip_date = Datas['vip_date'];
$this->_points = Datas['points'];
$this->_public = Datas['public'];
$this->_active = Datas['active'];
$this->_try = Datas['try'];
$this->_connection = Datas['connection'];
$this->_ip = Datas['ip'];
}
//Fermeture de la connexion à la DB
mysql_close();
}
//Cette fonction DOIT être appelée avant d'instancier la classe, c'est elle qui créera un nouvel objet User
//appel de la fonction via User::Connect($login, $password)
function Connect($login, $password)
{
//Connexion à la DB
include "_connection.php";
//Requête sur login et password crypté $Query "SELECT id FROM users WHERE login '".$login."' AND password = '".md5($password)."'";
$Result = mysql_query($Query);
//On récupère une seule ligne de résultat
if($Data = mysql_fetch_row($Result))
{
//Si un enregistrement trouvé, on renvoie un nouvel objet User appelé via son constructeur
mysql_close();
return new User($Data['0']);
}
else
{
//Sinon on renvoie NULL
return NULL;
mysql_close();
}
}
}
?>
Le code d'erreur :Parse error: parse error in c:\program files\easyphp1-8\www\memoire\php\class.user.inc.php on line 16
Et je ne trouve vraiment pas l'erreur, si quelqu'un pouvait m'aider non seulement à corriger mais surtout à comprendre, ce serait vraiment très gentil de sa part.
Merci d'avance pour toutes vos réponses qui me feront avance dans mon petit travail.
tempo199
Messages postés6Date d'inscriptionjeudi 5 juin 2003StatutMembreDernière intervention 9 février 2007 9 févr. 2007 à 20:58
Ben oui, d'habitude ça fonctionne comme ça mais en dehors d'une classe
le if vérifie que la requête a renvoyé des résultats
le problème se trouve en fait à la ligne $this->_id = Datas['id'];
tempo199
Messages postés6Date d'inscriptionjeudi 5 juin 2003StatutMembreDernière intervention 9 février 2007 9 févr. 2007 à 21:22
Oh crénon, bienvu, ça m'apprendre à faire du copier coller pour les lignes suivantes car je ne l'avais absolument pas vu.
Je pouvais encore chercher longtemps.