Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
4184 connectés 

 


 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  24  25  26  ..  62  63  64  65  66  67
Auteur Sujet :

Model View Controller (MVC) - Architecture des applications PHP

n°1577554
omega2
Posté le 21-06-2007 à 10:45:11  profilanswer
 

Reprise du message précédent :
Oui, c'est bien les #titre #contenu ...
Pour le remplissage des zones du template, je n'utilise pas directement de "$template->add" mais c'est par ce que j'ai rajouté une couche d'abstraction entre les vues et le template et que j'ai organisé mon gestionnaire de template un peu différement. Mais dans le principe, c'est ça.
 
Evidement, si tu veux créer un systéme de ce genre, il te faudra y réfléchir sufisament en pensant à ce que t'auras besoin pour ton site : si on a besoin d'énormément de souplesse dans l'affichage, ca devient complexe à faire mais si on a pas besoin de beaucoup de souplesse, on peut y arriver sans trop de difficulté. En plus, en fonction des besoins de ton site, le gestionnaire de template proposera d'avantage de fonctions aux autres objets ou au contraire, il en limitera le nombre.

mood
Publicité
Posté le 21-06-2007 à 10:45:11  profilanswer
 

n°1577573
Le_nain
Posté le 21-06-2007 à 11:26:12  profilanswer
 

Je viens de lire ça :
http://www.symfony-project.com/boo [...] View-Layer
Et ton système s'en rapproche pas mal j'ai l'impression ^^
Genre un template global avec des "slots", et dans ces "slots", on met des templates :)
Les templates peuvent contenir des "partials", ce qui finit le tout.
 
Je n'ai pas besoin de beaucoup de souplesse en fait, et je n'ai pas trop envie d'écrire une classe pour ça. Finalement ça ne sera pas MVC, mais on en a pas forcément besoin pour notre projet en fait. Ca le compliquerait trop :p
 
Merci beaucoup à toi quand même !

n°1577679
Shinuza
This is unexecpected
Posté le 21-06-2007 à 15:26:20  profilanswer
 

Ruby aussi fait ça, c'est à mon sens assez pratique.


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1580132
naeh
Posté le 27-06-2007 à 21:24:52  profilanswer
 

perso je dis : MVC => faut pas se faire chier, un symfony et zoo :)
 
je suis entrain de découvrir la bête et je dois avouer que je suis assez impressionné, sachant que je suis partis à la base pour faire un blog en MVC ben je dois dire qu'avec symfony, tout pleins de problemes feront partie du passé :)
 
pour l'instant je lis le book, j'en suis au chapitre 8, quand je l'aurais fini, vous verrez mon blog version symfony, certes je n'aurai pas tout le mérite d'avoir construit une application en MVC, mais n'oublions pas que que nous sommes dans un monde où savoir utiliser l'existant est primordial :)
 
donc moi je dis, avant de programmer en MVC, il faut installer Symfony (je rigole :D)

Message cité 1 fois
Message édité par naeh le 27-06-2007 à 21:26:03
n°1580145
Dj YeLL
$question = $to_be || !$to_be;
Posté le 27-06-2007 à 22:20:10  profilanswer
 

Moi je dis que tous ceux que j'ai essayé m'on pris la tête et que j'ai dev un petit truc maison pour le moment, mais que quand j'aurai plus de temps je me vais me dev un petit gestionnaire mvc un peu mieux :D


---------------
Gamertag: CoteBlack YeLL
n°1580179
Skateinmar​s
Posté le 28-06-2007 à 02:01:57  profilanswer
 

naeh a écrit :

perso je dis : MVC => faut pas se faire chier, un symfony et zoo :)
 
je suis entrain de découvrir la bête et je dois avouer que je suis assez impressionné, sachant que je suis partis à la base pour faire un blog en MVC ben je dois dire qu'avec symfony, tout pleins de problemes feront partie du passé :)
 
pour l'instant je lis le book, j'en suis au chapitre 8, quand je l'aurais fini, vous verrez mon blog version symfony, certes je n'aurai pas tout le mérite d'avoir construit une application en MVC, mais n'oublions pas que que nous sommes dans un monde où savoir utiliser l'existant est primordial :)
 
donc moi je dis, avant de programmer en MVC, il faut installer Symfony (je rigole :D)


symfony pour un blog ? overkill...
un truc comme cakephp ou mieux codeigniter sera bien mieux adapté à ces besoins

n°1580280
Dj YeLL
$question = $to_be || !$to_be;
Posté le 28-06-2007 à 11:33:24  profilanswer
 

Pour utiliser CakePhp sur un de mes projets, je dois dire que je le trouve pas exceptionnel... Peut être pas encore assez mûr, je sais pas trop, mais je regrette d'être parti sur ce framework.


---------------
Gamertag: CoteBlack YeLL
n°1580600
naeh
Posté le 29-06-2007 à 00:20:05  profilanswer
 

Skateinmars a écrit :

symfony pour un blog ? overkill...
un truc comme cakephp ou mieux codeigniter sera bien mieux adapté à ces besoins


 
si tu reviens une ou deux pages en arrière tu verras que je me suis lancé dans la prog d'un blog en MVC (une sorte d'entrainement) j'ai présenté ce que j'avais fait ici, et ça avait l'air bon (a part l'abstraction de l'sql :D) et là j'essaye de faire la meme chose avec symfony, donc toujours dans le chapitre entrainement hein ;)
 
et je pense que le blog est un bon exemple pour s'entrainer.
 
donc voilà, si j'avais besoin d'un blog, y'en a à la pelle, je n'irais pas en programmer un ;)

n°1581389
AlphaZone
Posté le 02-07-2007 à 10:42:10  profilanswer
 

Bonjour,
 
Petite question qui me turlupine. Comment gérez-vous la base de données. Faites-vous une classe DBCommon et toutes vos classes hérites de celle-ci ?
 
Ou bien elle indépendante et vous faites appelle à celle-ci quand c'est nécessaire ?
 
Comment gérez-vous la connexion :
Vous créez une connexion dès le départ et vous faites vos requêtes puis vous fermez la connexion à la fin du traitement de la page ? Ou bien est-ce que vous créez une connexion à chaque fois que vous ayez besoin d'exécuter une requête SQL ?
 
Merci de m'éclairez sur tout ca car c'est un peu flou.


---------------
"Nous avons tous nos machines du temps. Celles qui nous ramènent en arrière sont les souvenirs, celles qui nous projettent en avant sont les rêves."
n°1581438
Dj YeLL
$question = $to_be || !$to_be;
Posté le 02-07-2007 à 12:37:46  profilanswer
 

Je ne créé pas la connexion dès le départ, mais j'instancie la classe en lui passant les params de connexion.
 
Ensuite j'ai juste à faire une requête, ça détecte automatiquement si une connexion existe ou pas. Si c'est le cas, il utilise la connexion existante, sinon il la créé et l'utilise ensuite.


---------------
Gamertag: CoteBlack YeLL
mood
Publicité
Posté le 02-07-2007 à 12:37:46  profilanswer
 

n°1581439
Shinuza
This is unexecpected
Posté le 02-07-2007 à 12:40:31  profilanswer
 

Dj YeLL a écrit :

Je ne créé pas la connexion dès le départ, mais j'instancie la classe en lui passant les params de connexion.
 
Ensuite j'ai juste à faire une requête, ça détecte automatiquement si une connexion existe ou pas. Si c'est le cas, il utilise la connexion existante, sinon il la créé et l'utilise ensuite.


Tu fais ça en appelant la fonction constructeur?


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1581461
C4O2
Posté le 02-07-2007 à 14:05:50  profilanswer
 

AlphaZone a écrit :

Bonjour,
 
Petite question qui me turlupine. Comment gérez-vous la base de données. Faites-vous une classe DBCommon et toutes vos classes hérites de celle-ci ?
 
Ou bien elle indépendante et vous faites appelle à celle-ci quand c'est nécessaire ?


    Pour ma part, j'ai une classe qui s'occupe de la connexion à la BD avec une méthode connexion(). Ma classe hérite de la classe BD elle peut donc utiliser la méthode connexion de la classe BD... (la connexion est donc créée si on en a besoin tout comme Dj Yell).
    J'utilise une connexion dans chaque page qui nécessite une requete SQL, puis je ferme celle-ci lorsque tout mes appels SQL sont réalisés.
    Il me semble que la meilleure méthode serait d'utiliser un pool de connexion (mais je ne suis pas très au point de ce côté là). Mais cela se fait au niveau du serveur apache et non en langage php... (à confirmer par des personnes ayant pratiqué...).
 
P.S. : Dj Yell ? Yell comme la "rappeuse" ?  :lol:  

n°1581462
Dj YeLL
$question = $to_be || !$to_be;
Posté le 02-07-2007 à 14:06:00  profilanswer
 

Shinuza a écrit :

Tu fais ça en appelant la fonction constructeur?


 
Mon constructeur se charge uniquement de stocker les paramètres de connexion.
 
En gros j'ai quelque chose de ce genre là (je passe sur la sécurité, et la gestion des erreurs) :
 

Code :
  1. function __construct($host, $user, $pass, $base){
  2.    $this->_host = $host;
  3.    etc...
  4. }
  5.  
  6. function query($query){
  7.    if($this->_connect()){
  8.        // On effectue le bazar
  9.    }
  10. }
  11.  
  12. function _connect(){
  13.    if(!$this->_connection) {
  14.        // on effectue la connexion, si ok return true, sinon false
  15.    } else {
  16.        return true;
  17.    }
  18. }


---------------
Gamertag: CoteBlack YeLL
n°1581495
AlphaZone
Posté le 02-07-2007 à 15:13:38  profilanswer
 

Merci à Dj Yell et C4O2 pour votre aide. Si quelqu'un pouvait me détailler la version de C4O2 avec le pool, ca serait le top :D


---------------
"Nous avons tous nos machines du temps. Celles qui nous ramènent en arrière sont les souvenirs, celles qui nous projettent en avant sont les rêves."
n°1581505
Dj YeLL
$question = $to_be || !$to_be;
Posté le 02-07-2007 à 15:29:42  profilanswer
 

Je sais pas ce qu'il entend par "pool" (un singleton peut être ?)


---------------
Gamertag: CoteBlack YeLL
n°1581514
skeye
Posté le 02-07-2007 à 15:43:38  profilanswer
 

Dj YeLL a écrit :

Je sais pas ce qu'il entend par "pool" (un singleton peut être ?)


Presque. Sauf qu'au lieu d'une seule instance tu en autorises N. Après le jeu c'est de savoir laquelle tu refiles quand on t'en demande une...:D

Message cité 1 fois
Message édité par skeye le 02-07-2007 à 15:44:09

---------------
Can't buy what I want because it's free -
n°1581516
AlphaZone
Posté le 02-07-2007 à 15:45:42  profilanswer
 

skeye a écrit :

Presque. Sauf qu'au lieu d'une seule instance tu en autorises N. Après le jeu c'est de savoir laquelle tu refiles quand on t'en demande une...:D


Ca à l'air compliqué!


---------------
"Nous avons tous nos machines du temps. Celles qui nous ramènent en arrière sont les souvenirs, celles qui nous projettent en avant sont les rêves."
n°1581517
C4O2
Posté le 02-07-2007 à 15:48:46  profilanswer
 

Dj YeLL a écrit :

Je sais pas ce qu'il entend par "pool" (un singleton peut être ?)


    Un cas simple : P1 a besoin de faire une/des requête/S, P1 se connecte je fais ma/mes requête/s, P1 se déconnecte.
    Un autre cas simple : 1er cas P1 fait ce qu'il a à faire et maintenant P2 veut faire une requête. Il se connecte fait ses requêtes et se déconnecte.
 
    Pas de soucis. Ah si un... la connexion à la BDD est la commande qui met le plus de temps à s'exécuter (tout est relatif...). Une amélioration est donc d'utiliser un pool de connexion. Il s'agit d'ouvrir X connections (10 par exemple dès le début), et de maintenir ouvertes. Ainsi lorsque l'on a besoin d'un accès  à la BDD, on ne se connecte pas, mais on récupère une connexion du pool. Et une fois les requetes effectruées, on ne referme pas la connection, mais on la replace dans le pool.
 
    Voici le fonctionnement d'un pool de connexion. Les subtilités mises à part.

n°1581519
skeye
Posté le 02-07-2007 à 15:50:17  profilanswer
 

AlphaZone a écrit :

Ca à l'air compliqué!


pas des masses...C'est un singleton qui stocke N instances de la classe au lieu d'une seule, juste...:D


---------------
Can't buy what I want because it's free -
n°1581520
Dj YeLL
$question = $to_be || !$to_be;
Posté le 02-07-2007 à 15:52:39  profilanswer
 

C4O2 a écrit :

Un cas simple : P1 a besoin de faire une/des requête/S, P1 se connecte je fais ma/mes requête/s, P1 se déconnecte.
    Un autre cas simple : 1er cas P1 fait ce qu'il a à faire et maintenant P2 veut faire une requête. Il se connecte fait ses requêtes et se déconnecte.
 
    Pas de soucis. Ah si un... la connexion à la BDD est la commande qui met le plus de temps à s'exécuter (tout est relatif...). Une amélioration est donc d'utiliser un pool de connexion. Il s'agit d'ouvrir X connections (10 par exemple dès le début), et de maintenir ouvertes. Ainsi lorsque l'on a besoin d'un accès  à la BDD, on ne se connecte pas, mais on récupère une connexion du pool. Et une fois les requetes effectruées, on ne referme pas la connection, mais on la replace dans le pool.
 
    Voici le fonctionnement d'un pool de connexion. Les subtilités mises à part.


 
On fait ça avec les connexion permanentes ? (genre mysql_pconnect) ?


---------------
Gamertag: CoteBlack YeLL
n°1581521
skeye
Posté le 02-07-2007 à 15:52:58  profilanswer
 

Dj YeLL a écrit :

On fait ça avec les connexion permanentes ? (genre mysql_pconnect) ?


c'est mieux.[:joce]


---------------
Can't buy what I want because it's free -
n°1581522
Dj YeLL
$question = $to_be || !$to_be;
Posté le 02-07-2007 à 15:54:09  profilanswer
 

skeye a écrit :

c'est mieux.[:joce]


 
Oui non je me doute :D Je voulais juste être sûr d'avoir bien compris?
 
Un forum comme HFR, il fait combien de connexion simultanées en moyenne ? :D


---------------
Gamertag: CoteBlack YeLL
n°1581523
skeye
Posté le 02-07-2007 à 15:55:43  profilanswer
 

Pas la moindre idée. [:dawa]
Mais quoi qu'il arrive il a pas intérêt à passer sa vie à ouvrir et fermer les connexions à la base.[:joce]


---------------
Can't buy what I want because it's free -
n°1581525
Dj YeLL
$question = $to_be || !$to_be;
Posté le 02-07-2007 à 15:58:08  profilanswer
 

Du coup je me pose une question ... quel sont les avantages de la connexion NON permanente ?


---------------
Gamertag: CoteBlack YeLL
n°1581528
skeye
Posté le 02-07-2007 à 16:00:22  profilanswer
 

Dj YeLL a écrit :

Du coup je me pose une question ... quel sont les avantages de la connexion NON permanente ?


Quand une connexion permanente se ferme brutalement (réseau en carafe entre serveur d'applis et de bdd par exemple) il arrive que ça vautre tout jusqu'à redémarrage de l'appli, puisque la connexion est foireuse et qu'on n'en crée pas de nouvelle...(j'ai déjà eu le soucis sur un tomcat).[:petrus75]


---------------
Can't buy what I want because it's free -
n°1581529
AlphaZone
Posté le 02-07-2007 à 16:01:41  profilanswer
 

Et au lieu de stocker N instances, n'est-il pas préférable d'utiliser un compteur ?
 
Auparavant j'avais conçu cette classe :

Code :
  1. class DBCommon {
  2. /**
  3.  * Nombre d'instanciations de la classe
  4.  */
  5. private static $cpt = 0;
  6. /**
  7.  * Connexion de la base de données
  8.  */
  9. private static $linkID;
  10. /**
  11.  * Resultat de la requete
  12.  */
  13. private $sql;
  14. /**
  15.  * Constructeur : Mise en place de la connexion avec la base de données
  16.  */
  17. protected function __construct(){
  18.  self::$cpt++;
  19.  if (self::$cpt == 1) {
  20.   $this->db_connect(DB_HOST, DB_USER, DB_PASS, DB_DBASE);
  21.  }
  22. }
  23. /**
  24.  * Fermeture de la connexion
  25.  */
  26. protected function __destruct(){
  27.  if (self::$cpt == 1) {
  28.   $this->db_close();
  29.  }
  30.  self::$cpt--;
  31. }
  32. }


 
Le problème est que ma connexion est gardé jusqu'à la fin du traitement de la page. J'ai donc une connexion à ma BD qui est monopolisée.


---------------
"Nous avons tous nos machines du temps. Celles qui nous ramènent en arrière sont les souvenirs, celles qui nous projettent en avant sont les rêves."
n°1581532
skeye
Posté le 02-07-2007 à 16:04:50  profilanswer
 

AlphaZone a écrit :

Et au lieu de stocker N instances, n'est-il pas préférable d'utiliser un compteur ?


...et il se passe quoi quand tu demandes une connexion la fois suivante, ça explose?[:pingouino]


---------------
Can't buy what I want because it's free -
n°1581537
Dj YeLL
$question = $to_be || !$to_be;
Posté le 02-07-2007 à 16:08:19  profilanswer
 

AlphaZone a écrit :

Et au lieu de stocker N instances, n'est-il pas préférable d'utiliser un compteur ?

 

Auparavant j'avais conçu cette classe :

Code :
  1. ...
 

Le problème est que ma connexion est gardé jusqu'à la fin du traitement de la page. J'ai donc une connexion à ma BD qui est monopolisée.

 

Rien compris à ton truc ... :D


Message édité par Dj YeLL le 02-07-2007 à 16:08:32

---------------
Gamertag: CoteBlack YeLL
n°1581540
Dj YeLL
$question = $to_be || !$to_be;
Posté le 02-07-2007 à 16:10:22  profilanswer
 

En fait le truc qu'il faudrait faire, c'est n'ouvrir aucune (ou une seule) connexion.
 
À la première demande, on ouvre, et on ferme pas, à chaque demande on envoi l'instance déjà ouverte. Si jamais une instance est déjà en cours d'utilisation et qu'une autre demande est faite, alors seulement on créé une deuxième connexion... qui restera ouverte.
 
Et ainsi de suite, comme ça le nombre de connexion "suit" la demande (en imposant toutefois une limite :D)


---------------
Gamertag: CoteBlack YeLL
n°1581545
skeye
Posté le 02-07-2007 à 16:13:37  profilanswer
 

Dj YeLL a écrit :

En fait le truc qu'il faudrait faire, c'est n'ouvrir aucune (ou une seule) connexion.
 
À la première demande, on ouvre, et on ferme pas, à chaque demande on envoi l'instance déjà ouverte. Si jamais une instance est déjà en cours d'utilisation et qu'une autre demande est faite, alors seulement on créé une deuxième connexion... qui restera ouverte.
 
Et ainsi de suite, comme ça le nombre de connexion "suit" la demande (en imposant toutefois une limite :D)


Beaucoup trop casse-couilles.
Tu stockes un pool de N connexions, et le numéro de la dernière fournie. A chaque demande tu passes au numéro suivant, et à la fin tu boucles. Et tu fais l'initialisation quand t'en as besoin la première fois.:o


---------------
Can't buy what I want because it's free -
n°1581546
Dj YeLL
$question = $to_be || !$to_be;
Posté le 02-07-2007 à 16:16:07  profilanswer
 

skeye a écrit :

Beaucoup trop casse-couilles.
Tu stockes un pool de N connexions, et le numéro de la dernière fournie. A chaque demande tu passes au numéro suivant, et à la fin tu boucles. Et tu fais l'initialisation quand t'en as besoin la première fois.:o


 
Oué, c'est con ce que je dis, les connexions étant permanente on va forcément arriver à un moment ou un autre à la "limite", et donc elles seront toutes ouverte, et donc ça revient au même, et donc t'as raison, et donc je suis con, et donc voila :o


---------------
Gamertag: CoteBlack YeLL
n°1581548
skeye
Posté le 02-07-2007 à 16:17:48  profilanswer
 

Dj YeLL a écrit :

Oué, c'est con ce que je dis, les connexions étant permanente on va forcément arriver à un moment ou un autre à la "limite", et donc elles seront toutes ouverte, et donc ça revient au même, et donc t'as raison, et donc je suis con, et donc voila :o


ah non, ta solution est faisable. A condition que le consommateur d'une connexion prévienne quand il la libère.[:joce]


---------------
Can't buy what I want because it's free -
n°1581549
AlphaZone
Posté le 02-07-2007 à 16:18:40  profilanswer
 

skeye a écrit :

...et il se passe quoi quand tu demandes une connexion la fois suivante, ça explose?[:pingouino]


LoL non du tout.

 

Voila comment je vois là chose : J'ai besoin d'une connexion, je vérifie qu'il n'en existe pas. S'il n'en existe pas, je crée la connexion. S'il en existe une, je ne fais rien. Ensuite, j'exécute ma/mes requêtes jusqu'à la fin.

 

Je dois faire un héritage pour que ca fonctionne. Et bien entendu, c'est la raison de mon "premier" post sur ce sujet. A savoir si ce n'est pas mieux de créer une classe DBCommon à part pour pouvoir gérer les connexions au mieux. Et c'est là, que tout devient flou pour moi.

Message cité 1 fois
Message édité par AlphaZone le 02-07-2007 à 16:19:49

---------------
"Nous avons tous nos machines du temps. Celles qui nous ramènent en arrière sont les souvenirs, celles qui nous projettent en avant sont les rêves."
n°1581550
skeye
Posté le 02-07-2007 à 16:22:00  profilanswer
 

AlphaZone a écrit :

LoL non du tout.


Je ne répondais qu'à la partie "compteur seulement" de ta réponse. ;)
Comment tu veux utiliser et réutiliser plusieurs connexions sans les stocker?:D


---------------
Can't buy what I want because it's free -
n°1581552
AlphaZone
Posté le 02-07-2007 à 16:24:49  profilanswer
 

Oui si je n'utilise pas de tableau, c'est sûr ca ne sert à rien. Mais dans ce cas là, je ne vois pas du tout comment gérer la bête.


---------------
"Nous avons tous nos machines du temps. Celles qui nous ramènent en arrière sont les souvenirs, celles qui nous projettent en avant sont les rêves."
n°1581577
skeye
Posté le 02-07-2007 à 17:01:45  profilanswer
 

AlphaZone a écrit :

Oui si je n'utilise pas de tableau, c'est sûr ca ne sert à rien. Mais dans ce cas là, je ne vois pas du tout comment gérer la bête.


Bah c'est très simple...ça donnerait un truc du genre (bon attention je me suis amusé, mais c'est p-e blindé de conneries, hein...:D):

 
Code :
  1. require_once('Connexion.class.php');
  2.  
  3. class DbConnexionFactory{
  4.  private $next;
  5.  private $poolSize;
  6.  private $connexionResources;
  7.  private $instance;
  8.  
  9.  private $mesparametresdeconnexionàlabase;
  10.  
  11.  private function __construct($poolSize, $mesparametresdeconnexionàlabase){
  12.    self::$poolSize = $poolSize;
  13.    self::$connexionResources = array();
  14.    self::$next = 0;
  15.  
  16.    self::$mesparametresdeconnexionàlabase = $mesparametresdeconnexionàlabase;
  17.  }
  18.  
  19.  /*
  20.    Appelée une fois au démarrage du script par la conf ou je ne sais quoi...
  21.    Les appels suivants ne font rien.
  22.  */
  23.  public static function init($poolSize = 1, $mesparametresdeconnexionàlabase){
  24.    if(empty(self::$instance)){
  25.      self::instance = new DbConnexionFactory($poolSize, $mesparametresdeconnexionàlabase);
  26.    }
  27.  }
  28.  
  29.  public static getConnexion(){
  30.    if(!array_key_exists(self::$connexionResources, self::$next)){
  31.      self::$connexionResources[self::$next] = ma_fonction_de_connexion_qui_retourne_une_ressource();
  32.    }
  33.  
  34.    $conn = new Connexion(self::$connexionResources[self::$next]);
  35.  
  36.    if(self::$next == self::$poolSize - 1){
  37.      self::$next = 0;
  38.    }
  39.    else{
  40.      self::$next++;
  41.    }
  42.    
  43.    return $conn;
  44.  }
  45.  
  46. }
 


A l'utilisation tu initialises ton pool une fois, et ensuite quand tu veux une connexion tu fais un appel à DbConnexionFactory::getConnexion() et tu récupères un objet Connexion prêt à l'emploi...

Message cité 1 fois
Message édité par skeye le 02-07-2007 à 17:01:59

---------------
Can't buy what I want because it's free -
n°1581578
ratibus
Posté le 02-07-2007 à 17:03:31  profilanswer
 

Avec MySQL le overhead lié à la connexion est faible (comparé à d'autres SGBD) donc on évite le mysql_pconnect et pas besoin de pool de connexion ;)

n°1581579
skeye
Posté le 02-07-2007 à 17:05:10  profilanswer
 

ratibus a écrit :

Avec MySQL le overhead lié à la connexion est faible (comparé à d'autres SGBD) donc on évite le mysql_pconnect et pas besoin de pool de connexion ;)


Avec oracle par contre l'overhead est assez énorme.[:petrus75]


Message édité par skeye le 02-07-2007 à 17:05:17

---------------
Can't buy what I want because it's free -
n°1581582
AlphaZone
Posté le 02-07-2007 à 17:09:56  profilanswer
 

skeye a écrit :

Bah c'est très simple...ça donnerait un truc du genre (bon attention je me suis amusé, mais c'est p-e blindé de conneries, hein...:D):
 

Code :
  1. require_once('Connexion.class.php');
  2.  
  3. class DbConnexionFactory{
  4.    // ...
  5. }


 
 
A l'utilisation tu initialises ton pool une fois, et ensuite quand tu veux une connexion tu fais un appel à DbConnexionFactory::getConnexion() et tu récupères un objet Connexion prêt à l'emploi...


Ok, ca j'ai compris. Mais ils meurent quand? D'après ce que tu me montre, la connexion est fermée une fois le script fini? Non?


---------------
"Nous avons tous nos machines du temps. Celles qui nous ramènent en arrière sont les souvenirs, celles qui nous projettent en avant sont les rêves."
n°1581583
Dj YeLL
$question = $to_be || !$to_be;
Posté le 02-07-2007 à 17:11:31  profilanswer
 

Ben c'est permanent ... pourquoi tu veux les faire mourrer ? :o


---------------
Gamertag: CoteBlack YeLL
n°1581584
skeye
Posté le 02-07-2007 à 17:13:40  profilanswer
 

AlphaZone a écrit :

Ok, ca j'ai compris. Mais ils meurent quand? D'après ce que tu me montre, la connexion est fermée une fois le script fini? Non?


pas si tu utilises une connexion persistante, style mysql_pconnect. Sauf que là je me demande si php est capable de créer plusieurs connexions persistantes avec les mêmes identifiants, en fait...ça doit dépendre des bases de données...[:joce]


---------------
Can't buy what I want because it's free -
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  24  25  26  ..  62  63  64  65  66  67

Aller à :
Ajouter une réponse
 

Sujets relatifs
Comment créer une architecture propre et fonctionelle...[Débutant] Webdesigner a besoin d'aide pour PHP
script PHP style explorateur windowsPHP et MS SQL
[PHP] envoi d'images qui se dimentionne et s'ajoute direct sur 1pageAfficher le temps utilisé pour générer une page PHP
[PHP] connexion bdd différente selon page locale ou sur serveur ?Afficher une image générée par un script PHP dans un PDF ?
Utilisation d'une variable en Flash depuis PHPErreur de forum PHP
Plus de sujets relatifs à : Model View Controller (MVC) - Architecture des applications PHP


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)