OVH Cloud OVH Cloud

[SESSION]

2 réponses
Avatar
phpounch
Bonjour,

Je suis en train de mettre au point un petit portail pour professeur (les
belges interessés peuvent toujours me contacter. je dis les belges car je ne
pense pas que le système francais fonctionne de la meme manière que le
nôtre, soit ...)

Alors voilà, plutot que de déclarer des nouveaux objets en debut de chaque
script, je pensais les mettre en session (leurs references) et pouvoir y
accéder de script en script. Mais ...
J'ai donc ecrit uen petite classe db.php pour gérer mes connexions mysql
etc, et j'ai instancié cette classe, je l'ai mise en var de session et
j'essaye d'y accéder sur un autre script mais visiblement, des informations
se perdent...
donc sur a.php:
<?php
if ( ! $_SESSION["connexion"])
$sonnexion = new DB();
$_SESSION["connexion"] = $connexion;
}
?>

b.php
<?php
session_start();
if ($_SESSION["connexion]) {
echo "connexion enregistrée";
}

$connexin->toString();
// doit afficher:
/*
Conenction sur "serveur"
Database "db name"
user "user"
password "password"
*/

$o = new Object(); // création d'un objet quelconque qui a uen methode qui
fait "select * from table"
$os = $o->get_all_from_db();
trt_object(); // affiche le contenu de la table
$o->destroy(); // destructeur
?>

toutes les infos de $connexion->toString() s'affichent correctement
mais lorsque $o veut exécuter son "select * ..." j'ai le message d'erreur
suivant (formaté par moi):
" Impossible d'exécuter select * from utilisateur:
No Database Selected "

Un avis sur la question?
Merci d'avance
Dams

2 réponses

Avatar
Florent
toutes les infos de $connexion->toString() s'affichent correctement
mais lorsque $o veut exécuter son "select * ..." j'ai le message d'erreur
suivant (formaté par moi):
" Impossible d'exécuter select * from utilisateur:
No Database Selected "



Bonjour,

C'est certainement simplement parce que tu as oublié un
mysql_select_db(nom_de_ta_base)
:)

Florent

Avatar
phpounch
En fait, c'est plus débile que ça ... enfin je le prend comme ça!

Lorsque je crée mon instance, je ne fais pas le connect à la DB.
Donc je le fais apres et le resultat de la connection est mis dans uen
variable de classe!

Mais cette variable ne semble pas garder le resultat de la connexion apres
que l'instance ait ete sauvée dans la session ...

Je ne comprends pas trop mais voilà le pourquoi du comment

Merci en tout cas.
Dams

toutes les infos de $connexion->toString() s'affichent correctement
mais lorsque $o veut exécuter son "select * ..." j'ai le message
d'erreur


suivant (formaté par moi):
" Impossible d'exécuter select * from utilisateur:
No Database Selected "