Page 1 sur 1
Récupérer la variable de ma base de données
Posté : 11 sept. 2014, 10:08
par Doge
Bonjour à tous,
Comment puis-je récupérer/transférer ma variable de la base de données (link).
Elle se trouve dans "mysql.php" et j'en ai besoin dans "index.php".
Je me suis renseigné sur les moyens de le faire (AJAX - $_post/$_get), mais je n'ai pas tout saisi, n'y réussi à mettre ceci en place.
public function connect (){
try {
$this->link = mysqli_connect($this->server,$this->username,$this->password,$this->database) or die("Error " . mysqli_error($this->link));
//print_r($this->link);
}
catch (PDOException $e) {
//print_r(error_log);;
exit('Erreur : ' . $e->getMessage());
}
}
J'aimerais bien pouvoir utiliser cette variable dans mon autre fichier PHP !
Merci de votre aide.
Re: Récupérer la variable de ma base de données
Posté : 11 sept. 2014, 10:31
par Spols
A priori c'est la fonction include ou require qu'il te faut
dans index.php tu inclu mysql.php et c'est comme si le code de mysql.php était écris dans index.php
Re: Récupérer la variable de ma base de données
Posté : 11 sept. 2014, 10:35
par Doge
A priori c'est la fonction include ou require qu'il te faut
dans index.php tu inclu mysql.php et c'est comme si le code de mysql.php était écris dans index.php
J'aimerais récupérer uniquement ma variable et non inclure la classe entière dans mon index.php.
Question : En incluant mon mysql.php, je peux ensuite sortir une des variables qu'il possède ? Je suis perplexe sur cette méthode.
Merci du retour
Re: Récupérer la variable de ma base de données
Posté : 11 sept. 2014, 11:29
par sirakawa
Tu mets ta variable en session dans mysql.php, tout simplement
Si tu inclus, il peut y avaoir des problèmes de portée des variables:
dans a.php je définis $z = array("a","b");
dans A.php j'inclus a.php; pas de problème pour retrouver $z;
mais si dans A.php tu as une fonction
function f()
{
}
tu es bon pour le passer $z en paramètre ou la déclarer globale
Re: Récupérer la variable de ma base de données
Posté : 11 sept. 2014, 11:39
par Doge
Tu mets ta variable en session dans mysql.php, tout simplement
Si tu inclus, il peut y avaoir des problèmes de portée des variables:
dans a.php je définis $z = array("a","b");
dans A.php j'inclus a.php; pas de problème pour retrouver $z;
mais si dans A.php tu as une fonction
function f()
{
}
tu es bon pour le passer $z en paramètre ou la déclarer globale
Dans mysql.php, je fais donc:
$_SESSION['link'] = $this->link;
Et dans index.php, je fais:
echo $_SESSION['link'];
Re: Récupérer la variable de ma base de données
Posté : 11 sept. 2014, 11:43
par sirakawa
tu peux faire aussi:
$link = $_SESSION['link'];
pour vérifier tu peux tjs écrire:
print_r($_SESSION);
N'oublie pas de mettre
session_start(); dans tous les
scripts où tu en as besoin comme première instruction, juste après
<?PHP
Re: Récupérer la variable de ma base de données
Posté : 11 sept. 2014, 11:51
par Doge
tu peux faire aussi:
$link = $_SESSION['link'];
pour vérifier tu peux tjs écrire:
print_r($_SESSION);
N'oublie pas de mettre
session_start(); dans tous les
scripts où tu en as besoin comme première instruction, juste après
<?PHP
J'ai beau essayer, mais je n'arrive pas à faire fonctionner cette démarche. Plusieurs questions interviennent :
-session_start(), je le lance au début de index.php, mais si j'essaie de le lancer dans mysql.php, il me dit que la session est déjà ouverte. Donc, dois-je fermer la session à la fin de index.php pour pouvoir le déclarer dans mysql.php ?
-$link = $_SESSION['link']; cette ligne va systématiquement me dire qu'il ne connait pas "link".
Code : Tout sélectionner
Notice: Undefined index: link in C:\WampServer\wamp\www\Universite\class\MySQL.php
J'ai essayé avec $this_link aussi..
Merci pour ton aide.
Re: Récupérer la variable de ma base de données
Posté : 11 sept. 2014, 12:22
par sirakawa
Tu as deux fichiers distincts:
a.php
<?PHP
session_start();
//récupération de $link
$_SESSION['link'] = $link;
?>
et b.php
<?PHP
session_start();
//récupération de $link
$link = $_SESSION['link'] = $link;
?>
Si tu inclus a.php dans b.php, la session est déjà ouverte (c'rest une variable globale)
Re: Récupérer la variable de ma base de données
Posté : 11 sept. 2014, 12:50
par Doge
Tu as deux fichiers distincts:
a.php
<?PHP
session_start();
//récupération de $link
$_SESSION['link'] = $link;
?>
et b.php
<?PHP
session_start();
//récupération de $link
$link = $_SESSION['link'] = $link;
?>
Si tu inclus a.php dans b.php, la session est déjà ouverte (c'rest une variable globale)
Clair & précis.
Merci de ton aide, sirakawa.
Cdlt,
Doge