Récupération des variables
Résolu
ettto
Messages postés
43
Statut
Membre
-
ettto Messages postés 43 Statut Membre -
ettto Messages postés 43 Statut Membre -
Bonjour,
mon problème est le suivant:
je n'arrive pas a récupérer des variables d'une autre classe php
voila mon code du fichier config.php:
j'essayais avec la commande suivante:
mais ça marche pas..
quelqu'un m'aidé et merci d'avance..
mon problème est le suivant:
je n'arrive pas a récupérer des variables d'une autre classe php
voila mon code du fichier config.php:
<?php
class config
{
private $host='localhost'; // db host
private $user='root'; // db username
private $pass=''; // db password
private $db='db' ; // db name
public function connect()
{ private $link;
$link = mysql_connect ($host, $user, $pass);
mysql_select_db ($db,$link);
}
}
?>
j'essayais avec la commande suivante:
include 'config.php';
mais ça marche pas..
quelqu'un m'aidé et merci d'avance..
4 réponses
-
Bonjour
En premier lieu, tu devrais utiliser PDO plutôt que les fonctions mysql_ qui ne seront bientôt plus supportées en PHP.
Mais ton problème vient d'une mauvaise utilisation des variables de ta classe. Effectivement, $host n'est pas défini dans ta fonction. C'est $this->host qu'il faut écrire, et idem pour toutes les variables de la classe dans toutes les méthodes (fonctions) de cette classe. Une ligne en guise d'exemple, à toi d'adapter les autres :$link = mysql_connect ($this->host, $this->user, $this->pass);
-
Bonjour,
Sans oublier (comme il te l'a été dit dans le message https://forums.commentcamarche.net/forum/affich-31858234-recuperation-des-variables#5) qu'il s'agit d'une CLASS .. donc on ne fait pas seulement un INCLUDE .. mais aussi un NE (et pour cela il faut un CONSTRUCT dans la class)
<?php class config { private $host='localhost'// db host ,$user='root' // db username ,$pass='' // db password ,$db='db' ; // db name public $link; function __construct(){ $this->connect(); } private function connect() { $this->link = mysql_connect ($this->host, $this->user, $this->pass); mysql_select_db ($db,$link); } } ?>
require_once "config.php"; $cfg= new config(); $link = $cfg->link;
Cordialement,
Jordane -
Bonjour,
Qu'est-ce qui ne marche pas exactement, ton include ? -
j'essayais de connecter a mon base de données avec la classe config..
le message d'erreur c'est que les varible $host, $user, $pass et $db ne sont pas définies..