[PHP] Classe MYSQL impossible d'accéder aux attributs de la classe

Classe MYSQL impossible d'accéder aux attributs de la classe [PHP] - PHP - Programmation

Marsh Posté le 28-01-2007 à 09:51:38    

Bonjour je vous expose mon problème, j'ai crée une classe News pour ajouter modifier supprimer une news et dans cette classe je veux me connecter à la base de données MYSQL. Voici le début de ma classe et mon fichier de test
 
-----------
Classe PHP
-----------
 
<?php
 
class Cnews
{  
 // Definition des attributs
 
 var $id_news = "";  // La news sera unique, elle aura donc un identifiant qui lui sera propre.
 var $titre = "";   // Le titre de la news.
 var $texte_news = "";  // Le texte de la news.
 var $date = "" ;   // La date a laquelle la news a été postée.
 var $auteur = "";  // L'auteur de la news.
 var $login = "";   // Login de connexion à la base
 var $pwd = "";   // Password de connexion à la base
 var $serveur = "";  // Serveur de connexion à la base
 var $base = "";   // Table de connexion à la base
 var $table = "";
 var $admin = 0;
 
 // Definition des methodes :
 // on doit etre connecté a la base de données avant d'utiliser celles-ci.
 
 function Cnews($serveur = "",$login = "",$pwd = "",$base = "",$table = "" )
 {
  $this->$serveur = $serveur;
  $this->$login = $login;
  $this->$pwd = $pwd;
  $this->$base = $base;
  $this->$table = $table;
 }
 
 // Fonction permettant de se connecter à une base de données : MySQL
 function connexionBD()
 {
  // Connexion à la base
  $database = mysql_connect ( $this->$serveur , $this->$login , $this->$password );
  if ($connect = mysql_select_db ($this->$base,$database))
   return true;
  else
   return false;
 }
?>
 
--------------
Fichier test
--------------
 
<?php
 
 // Inclusion de la classe crée
 include("Cnews.php" );
 
 // Instanciation de la classe
 $news = new Cnews("localhost","root","","news","nouvelles" );
 echo $news->$serveur;
 echo $news->connexionBD();
?>
 
Voici les erreurs  
 
Notice: Undefined variable: serveur in c:\program files\easyphp1-8\www\news lolo\utilisateurs.php on line 8
 
Notice: Undefined variable: serveur in c:\program files\easyphp1-8\www\news lolo\Cnews.php on line 35
 
Notice: Undefined variable: login in c:\program files\easyphp1-8\www\news lolo\Cnews.php on line 35
 
Notice: Undefined variable: password in c:\program files\easyphp1-8\www\news lolo\Cnews.php on line 35
 
Warning: mysql_connect(): Accès refusé pour l'utilisateur: 'ODBC'@'@localhost' (mot de passe: NON) in c:\program files\easyphp1-8\www\news lolo\Cnews.php on line 35
 
Notice: Undefined variable: base in c:\program files\easyphp1-8\www\news lolo\Cnews.php on line 36
 
Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in c:\program files\easyphp1-8\www\news lolo\Cnews.php on line 3
 
 
Ce qui veut dire que les variables de mon objet $news sont vides pourtant dans le constructeur elles sont initialisées je ne comprend, j'ai besoin d'aide merci !!

Reply

Marsh Posté le 28-01-2007 à 09:51:38   

Reply

Marsh Posté le 28-01-2007 à 10:16:01    

$this->serveur
$this->login
...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed