instance et heritage ?
Hors ligneMij Le 08/03/2007 à 18:29 Profil de Mij Configuration de Mij

Bonjour,

j'ai une petite application php5 et une base de donnée mysql.
cette application n'utilise pas les sessions (pas encore eu le tps d voir comment ça marche ;)
elle est utilisée en reseau local seulement

apres la connection d'un utilisateur, je fait simplement une redirection dans un dossier genre 'admin', 'utilisateur' ...

Pr admin par exemple, une fois qu'il est dans son dossier, il tombe sur l'index.php, donc il voit la page, le menu qui lui est destiné etc..
Quand il clique sur un onglet du menu, il change de fichier php mais comme cette page inclu le titre/banniere et le menu, on a l'impression d'avoir la même page sauf que le corps de la page correspond à l'onglet.

J'ai une classe Bdd que j'utilise à chaque fois que j'ai besoin de dialoguer avec la base, mais le probleme c'est qu'en ce moment j'instancie cette classe dans chacun de mes fichiers onglet . Du coup je relance une connexion à la base à chaque fois..

Comment faire, sans sessions, pour ne faire qu'une connection à la base au debut et pas à chaque changement d'onglet ?

merci de comprendre que je debute carrément en php et plus généralement en prog..
si une (ou toute) partie de ce que j'ai dit plus tôt est totalement incohérent ou alors que ce n'est pas du tout dans la logique de conception d'une appli, n'hésitez pas à me le dire !

merci d'avoir lu tt ça,
mij
Hors ligneMalalam Le 11/03/2007 à 10:03 Profil de Malalam Configuration de Malalam

Hello,

tu ne peux pas.
Enfin...les variables en PHP sont locales à ta "page". Par "page", j'entends une connexion du client sur le serveur. Chaque nouvelle connexion remet tout à zéro.
Tes onglets, je présume, sont autant de pages (même si c'est le même fichier hein...pour changer d'onglet, tu balances une requêtes HTTP : POST ou GET).
Bien sûr, il y a des moyens...tu pourrais linéariser ton objet (serialize) et le passer dans l'url.
Mais ce serait sans doute plus lourd et lent que de réinstancier ton objet.
Tu pourrais aussi utiliser Ajax (dans le cadre d'un back office, ça peut être sympa, mais bon...).
Les sessions n'y changeraient rien. Par contre, ton back office n'est, du coup, absolument pas sécurisé.
Hors ligneMij Le 11/03/2007 à 10:20 Profil de Mij Configuration de Mij

Bonjour et merci pour cette réponse,

j'ai deja utilisé la serialisation car j'avais besoin de récupérer un array, ça marche bien, mais si c'est plus lourd que de refaire une instance dans le cas de la base, alors je laisse tel quel

en tout cas je suis étonné que les sessions n'y change, je veux dire, il dit bien y avoir un moyen de pas relancer des connexions à la base à tout bout de champs ??

merci encore,
Mij
Vous avez résolu votre problème avec VIC ? Faites-le savoir sur les réseaux sociaux !
Vulgarisation-informatique.com
Cours en informatique & tutoriels