Organisation Objets PHP
niahoo
Messages postés
247
Date d'inscription
Statut
Membre
Dernière intervention
-
niahoo Messages postés 247 Date d'inscription Statut Membre Dernière intervention -
niahoo Messages postés 247 Date d'inscription Statut Membre Dernière intervention -
Salut,
je voudrais avoir différentes opinions par rapport à ce qui devrait et ce qui ne devrait pas être implémenté dans une classe. (il n'y aura pas de bonne ou mauvaise réponse je pense, mais différents concepts)
Par exemple :
je dois créer un simple classe "document texte" qui va servir à simplement gérer un bout de texte, et des métadonnées qui lui sont associées.
Ce document sera stocké dans une classe qui permettra de faire des opérations dessus : en chercher la traduction, l'enregistrer sur un disque, le transformer en image, ou je ne sais quoi.
Pensez-vous qu'il faille mettre dans la classe (ou dans une classe mère) le nom de la table mysql dans lequel il sera stocké ? pensez vous qu'il faille y mettre la connexion à la base ? Ou faudrait-il passer ces ressources en paramètres à une méthode ?
(Sachant qu'une base de données sera toujours le choix par défaut pour enregistrer ou charger les données)
Merci.
je voudrais avoir différentes opinions par rapport à ce qui devrait et ce qui ne devrait pas être implémenté dans une classe. (il n'y aura pas de bonne ou mauvaise réponse je pense, mais différents concepts)
Par exemple :
je dois créer un simple classe "document texte" qui va servir à simplement gérer un bout de texte, et des métadonnées qui lui sont associées.
Ce document sera stocké dans une classe qui permettra de faire des opérations dessus : en chercher la traduction, l'enregistrer sur un disque, le transformer en image, ou je ne sais quoi.
Pensez-vous qu'il faille mettre dans la classe (ou dans une classe mère) le nom de la table mysql dans lequel il sera stocké ? pensez vous qu'il faille y mettre la connexion à la base ? Ou faudrait-il passer ces ressources en paramètres à une méthode ?
(Sachant qu'une base de données sera toujours le choix par défaut pour enregistrer ou charger les données)
Merci.
A voir également:
- Organisation Objets PHP
- Site pour vendre des objets d'occasion - Guide
- Easy php - Télécharger - Divers Web & Internet
- Ryanair objets interdits - Guide
- Expert php pinterest - Télécharger - Langages
- Vous ne pouvez pas déplacer des objets en dehors de la feuille - Forum Excel
2 réponses
je vais récapituler pour voir si j'ai bien compris...
alors pour ta classe elle contiendra sûrement
l'adresse du fichier
le texte qu'il contient
sa traduction
une méthode pour le lire
une méthode pour le traduire
une méthode pour enregistrer...
Sachant que la pluspart des informations sont enregistrées sur une base de donnée.
Ce que MOI je ferais :
à mettre dans ta classe qui correspond au fichier :
ensuite dans un document à part tu crées, dans un fichier bien protégé (CHMOD restrictif) :
(et n'oublie pas de créer un fichier "fichier_log.log" dans le répertoire de connexion)
enfin dans le fichier global, où tu dois faire appel à ta classe :
alors pour ta classe elle contiendra sûrement
l'adresse du fichier
le texte qu'il contient
sa traduction
une méthode pour le lire
une méthode pour le traduire
une méthode pour enregistrer...
Sachant que la pluspart des informations sont enregistrées sur une base de donnée.
Ce que MOI je ferais :
à mettre dans ta classe qui correspond au fichier :
function __construct($nom){ $resultat_requete=mysql_query("SELECT * FROM table_fichier WHERE nom_fichier='".$nom."'"); $resultat_requete=mysql_fetch_assoc($resultat_requete); //puis tu attribues les valeurs aux variables : $this->nom=$nom; $this->adresse=$resultat_requete['adresse']; $this->contenu=$this->lire_document();//et ainsi de suite }
ensuite dans un document à part tu crées, dans un fichier bien protégé (CHMOD restrictif) :
function connexion($database){ mysql_connect("serveur","racine","mot de passe"); if(!mysql_error()){ mysql_select_db($database); $erreur=false; } else{ $erreur=log_error("\n".mysql_error(),3,"fichier_log.log"); $erreur=true; }
(et n'oublie pas de créer un fichier "fichier_log.log" dans le répertoire de connexion)
enfin dans le fichier global, où tu dois faire appel à ta classe :
include(connexion.php); require(taclass.php); if(!erreur){ $fichier=new taclass("nom_du_fichier"); /*reste du code*/ } else{ echo('une erreur est survenue, merci de nous pardonner ce désagrément'); }