Forum Solarus-Games francophone

Jeux amateurs => Aide & support => Discussion démarrée par: Helmasaur le 01 Avril 2009 à 16:43

Titre: Framework PHP
Posté par: Helmasaur le 01 Avril 2009 à 16:43
Je ne sais pas si ça il fallait mettre ce sujet ici ou dans Informatique vu qu'il concerne plus ou moins les deux.

Je parlerais ici seulement de développement de site web. Peut être plus tard les questions sur le développement en Python et C++.
J'ai déjà créer des applications web (la plupart basique) mais sans utilisé de structure permettant une gestion facile (sans MVC par exemple).
Je voulais passer au PHP OO en codant un framework moi-même. J'ai finalement abandonné car trop long et surtout, je ne voulais pas réinventer la roue alors que ce n'est pas pour un grand projet.
Alors voilà ce que je me demande :
— Est-ce que j'ai tort de ne pas coder mon propre framework ?
— Quel framework choisir (je me suis seulement intéressé à CakePHP pour l'instant) ?

Merci d'avance ;).
Titre: Re : Framework PHP
Posté par: Chao le 02 Avril 2009 à 03:16
Désolé d'être inculte à ce sujet mais qu'est-ce qu'un Framework :mrgreen:?
Titre: Re : Framework PHP
Posté par: binbin le 02 Avril 2009 à 09:03
Un framework est tout simplement un logiciel intégré qui permet de développer plus simplement.

Un excellent framework php que je recommande à tout le monde, c'est codeigniter qui est basé sur un modèle MVC ( Model, View , Controller)

Pour plus d'infos : http://codeigniter.com/
La doc est très complète :)
Titre: Re : Framework PHP
Posté par: Helmasaur le 02 Avril 2009 à 15:10
J'ai souvent vu CodeIgniter et Synphony comme nom de framework en plus de CakePHP. Une fois que j'aurais fini de lire la doc de CakePHP, je verrais ce que tu cites Binbin ;).

Sinon, je reviens à la question qui m'importe le plus : Doit-on créer son framework soi-même ?
[spoiler]Ou pas :ninja:.[/spoiler]

Et que faut-il surtout pour dire qu'un framework est bon ?
Titre: Re : Framework PHP
Posté par: binbin le 02 Avril 2009 à 16:09
A quoi bon coder son propre framework quand ceux existants fonctionnent bien . Ils ne sont pas là pour faire joli ;)

Pour ma part, un bon framework est un logiciel qui permet de faire des applications web pouvant être être très simplement mises à jour dans le temps. C'est le cas pour codeigniter.
Titre: Re : Re : Framework PHP
Posté par: Helmasaur le 02 Avril 2009 à 16:16
Citation de: Binbin le 02 Avril 2009 à 16:09
A quoi bon coder son propre framework quand ceux existants fonctionnent bien . Ils ne sont pas là pour faire joli ;)

Pour ma part, un bon framework est un logiciel qui permet de faire des applications web pouvant être être très simplement mises à jour dans le temps. C'est le cas pour codeigniter.
D'accord, j'abandonne complètement l'idée de développer un framework moi-même. J'ai hésité parce que je ne savais pas si je pouvais faire CE que je voulais avec le code de d'autres personnes.

En fait, j'ai vu qu'en utilisant un framework, il y a des « normes » à respecter. Ce n'est pas réellement le problème. Ce que je voudrais savoir est les fonctions qui sont intégrées dans un framework (j'ai vu qu'il y avait une lib AJAX/JS et c'est sûrement le cas de PHP).
Quelles sont ces principales fonctions ? Connexion à la BDD ? Système de cache ?

J'ai déjà cherché sur Internet des avis sur plusieurs framework et en fait, j'aimerais utiliser un framework dès le départ pour éviter de migrer sur un autre plus tard.
Titre: Re : Framework PHP
Posté par: binbin le 02 Avril 2009 à 17:05
Le plus simple est que tu regardes le sommaire de la documentation pour voir ce que tu peux faire :)
http://codeigniter.com/user_guide/

C'est très formateur.
J'ai toujours réussi à faire tout ce que je voulais avec ce framework. Bon après c'est sûr que si tu fais des trucs genre manipulations d'image, je conseille de faire ca avec imagick en bash shell :P

Ca poutre :D
Titre: Re : Framework PHP
Posté par: Helmasaur le 02 Avril 2009 à 19:23
Ah oui merci, je vais voir ça en détail.
J'aimerais bien un avis de d'autres développeurs web pour comparer leurs avis ^_^.


PS : il y a souvent comme critère le fait que la documentation soit traduit en français. Pour moi, ça ne m'importe pas si il n'y a que la version anglaise ;).
Titre: Re : Framework PHP
Posté par: Noxneo le 04 Avril 2009 à 00:25
Bah moi je dis, OUI, codes ton propre framework.


Bon, certaine personnes pourraient te dire que si tu le fais toi même, ça sera pas securisé, tu perdras du temps, blabla...mais ces personnes n'ont certainement jamais réalisé qu'on apprenait beaucoup mieux de ses erreurs, et auraient probablement du mal à faire les choses par elles même puisqu'elles sont habituées au pré-mâché.
Titre: Re : Re : Framework PHP
Posté par: Helmasaur le 04 Avril 2009 à 10:03
Citation de: Noxneo le 04 Avril 2009 à 00:25
Bah moi je dis, OUI, codes ton propre framework.


  • Personne n'a les mêmes besoins; un framework tiers ne répondra jamais à tes attentes à 100%
  • Ca te fera apprendre certainement plus qu'en utilisant du prémaché
  • La fierté de l'avoir fait toi même
  • J'ai mentionné le fait que ça sera plus flexible et au final ça répondra à tes attentes?

Bon, certaine personnes pourraient te dire que si tu le fais toi même, ça sera pas securisé, tu perdras du temps, blabla...mais ces personnes n'ont certainement jamais réalisé qu'on apprenait beaucoup mieux de ses erreurs, et auraient probablement du mal à faire les choses par elles même puisqu'elles sont habituées au pré-mâché.
Au départ, je pensais à peu de chose près la même chose mais en regardant le code de framework « professionnel », je me suis dis que je n'avais pas le niveau pour le faire moi-même.

Si (je dis bien si), au lieu d'utiliser un framework qui n'est pas le miens, je le créer totalement. Dois-je en faire pour plusieurs de mes projets ou le développer au fur et à mesure ?
Titre: Re : Framework PHP
Posté par: Noxneo le 04 Avril 2009 à 11:52
Bah les deux. Tu écris une base fonctionnelle que tu étends au fur et à mesure de tes besoins.

CitationAu départ, je pensais à peu de chose près la même chose mais en regardant le code de framework « professionnel », je me suis dis que je n'avais pas le niveau pour le faire moi-même.
Essayer = apprendre.
:(

Titre: Re : Re : Framework PHP
Posté par: Helmasaur le 04 Avril 2009 à 11:57
Citation de: Noxneo le 04 Avril 2009 à 11:52
Bah les deux. Tu écris une base fonctionnelle que tu étends au fur et à mesure de tes besoins.

CitationAu départ, je pensais à peu de chose près la même chose mais en regardant le code de framework « professionnel », je me suis dis que je n'avais pas le niveau pour le faire moi-même.
Essayer = apprendre.
:(
D'accord merci !
Une dernière question (bête) : Il faut un framework universel ou plusieurs spécialisés en fonction du type de site ?
Titre: Re : Framework PHP
Posté par: Noxneo le 04 Avril 2009 à 12:08
Les deux sont possibles, c'est à toi de choisir.
Titre: Re : Framework PHP
Posté par: Helmasaur le 06 Avril 2009 à 09:43
Je vous remercie Binbin et Noxneo.

J'aimerais juste savoir deux choses :

Au départ, je ne voulais pas utiliser un framework « pro » parce que je me disais qu'en créant le miens, le code sera plus adapté, que je pourrais faire ce que je voudrais selon la façon que je pense et en utilisant 100% des capacités du framework.
Mais après quelques essais, je ne sais pas vraiment quoi ajouter en plus de MVC et les fonctions élémentaires. Et surtout, ce n'est pas le problème du temps de développement mais le fait que je ne pense pas avoir la capacité de coder mon propre framework.
Je dis au passage que je suis encore débutant en POO mais je pense qu'en procédural, mon niveau est assez bon.
Ce que je souhaite, c'est utiliser un seul framework pour tous mes projets (à la rigueur deux).

Sinon, aucun autre développeur ne souhaite faire un commentaire ?
Titre: Re : Framework PHP
Posté par: binbin le 06 Avril 2009 à 11:14
Citation de: Helmasaur le 06 Avril 2009 à 09:43
  • Est-ce qu'il y a la doc de CakePHP ou CodeIgniter ?

Voià la doc : http://codeigniter.com/user_guide/

Au passage, Code igniter est extensible sur tous les fronts. Si jamais un fonction que tu souhaites n'existe pas parmi les nombreuses classes déjà disponibles, tu peux en faire toi même  et/ouétendre les classes déjà existante. :)
Titre: Re : Framework PHP
Posté par: Helmasaur le 06 Avril 2009 à 16:06
Citation de: Binbin le 06 Avril 2009 à 11:14
Citation de: Helmasaur le 06 Avril 2009 à 09:43
  • Est-ce qu'il y a la doc de CakePHP ou CodeIgniter ?

Voià la doc : http://codeigniter.com/user_guide/
Ah désolé, j'ai oublié de mettre en PDF parceque je souhaiterais pouvoir avoir la documentation même sans internet. Il faut peut-être aspirer les pages ?

Citation de: Binbin le 06 Avril 2009 à 11:14
Au passage, Code igniter est extensible sur tous les fronts. Si jamais un fonction que tu souhaites n'existe pas parmi les nombreuses classes déjà disponibles, tu peux en faire toi même  et/ouétendre les classes déjà existante. :)
J'avais vu ça avec CakePHP où il y a le dossier « libs » pour les fonctions ou classes annexes. Ce qui est super !
Titre: Re : Framework PHP
Posté par: binbin le 06 Avril 2009 à 16:31
Il me semble que tu as la doc code igniter quand tu télécharges le framework :)
Titre: Re : Re : Framework PHP
Posté par: Helmasaur le 06 Avril 2009 à 16:39
Citation de: Binbin le 06 Avril 2009 à 16:31
Il me semble que tu as la doc code igniter quand tu télécharges le framework :)
Oui elle y est, merci ^_^.
Titre: Re : Framework PHP
Posté par: Noxneo le 06 Avril 2009 à 18:56
CitationMais après quelques essais, je ne sais pas vraiment quoi ajouter en plus de MVC et les fonctions élémentaires.

Si tu fais un framework avec un projet en tête et que tu ne sais pas quoi mettre dans ton framework, c'est que tu te planteras quand tu feras ton projet.
Titre: Re : Re : Framework PHP
Posté par: Helmasaur le 07 Avril 2009 à 15:04
Citation de: Noxneo le 06 Avril 2009 à 18:56
CitationMais après quelques essais, je ne sais pas vraiment quoi ajouter en plus de MVC et les fonctions élémentaires.

Si tu fais un framework avec un projet en tête et que tu ne sais pas quoi mettre dans ton framework, c'est que tu te planteras quand tu feras ton projet.
Pour moi un framework permet de ne pas coder les fonctions/classes élémentaires. Et à partir de ça, créer son application. Mais je ne suis pas sûr en fait.
Pour le cahier des charges, il avancce bien ^_^. Il ne me manque vraiment plus que ce choix pour me lancer.
Titre: Re : Framework PHP
Posté par: Helmasaur le 08 Avril 2009 à 15:12
Donc durant mes recherches, j'ai fini par abandonner l'idée de développeur mon propre framework. Ça me prendrait trop de temps à le créer, à le débugger et pourquoi réinventer la roue ?
Je préfère mettre mon énergie et mon temps à l'application lui même !

Maintenant, il me reste le choix du framework. Il y a Symphony, CakePHP et CodeIgniter.
J'hésite vraiment entre les trois. Il semblerait que Symphony soit le meilleur (d'après les avis que j'ai lu ;)).
Titre: Re : Framework PHP
Posté par: binbin le 08 Avril 2009 à 15:27
Ca après c'est une simple question de goût.

Je trouve que Symphony et Codeigniter cela se vaut. Mais j'ai une grande préférence pour Code igniter dans le sens qu'il est d'une très grande simplicité à installer sans se prendre la tête et il a un système de débuguage qui en vaut la peine.
Titre: Re : Re : Framework PHP
Posté par: Helmasaur le 08 Avril 2009 à 15:33
Citation de: Binbin le 08 Avril 2009 à 15:27
Ca après c'est une simple question de goût.

Je trouve que Symphony et Codeigniter cela se vaut. Mais j'ai une grande préférence pour Code igniter dans le sens qu'il est d'une très grande simplicité à installer sans se prendre la tête et il a un système de débuguage qui en vaut la peine.
Le problème, c'est qu'il est dur de comparer des framework. C'est très long de tous les tester :o !
Titre: Re : Framework PHP
Posté par: binbin le 08 Avril 2009 à 15:39
C'est pour ca que je regarde des choses plus pointu comme le débugueur.

La plupart des frameworks permet de faire à peu près les mêmes choses. C'est pour ca que je regarde le coté pratique de ce genre d'applications.
Titre: Re : Framework PHP
Posté par: Helmasaur le 08 Avril 2009 à 15:52
Citation de: Binbin le 08 Avril 2009 à 15:39
C'est pour ca que je regarde des choses plus pointu comme le débugueur.

La plupart des frameworks permet de faire à peu près les mêmes choses. C'est pour ca que je regarde le coté pratique de ce genre d'applications.
Je prendrais un au « hasard ». Surtout que tout sont suffisants. Si je veux utiliser par exemple la table des membres d'un forum non codé par moi-même (ou autre chose tierce) dans mon application, est-ce que c'est faisable ?
Titre: Re : Framework PHP
Posté par: binbin le 08 Avril 2009 à 15:54
Oui c'est faisable à condition que cette table soit dans la même base de données que ton appli.
D'ailleurs, la gestion de sessions de Codeigniter est vraiment bien fichu (utile pour les espaces membres)
Les sessions sont stockées automatiquement en base de données.

J'ai d'ailleurs faire une librairie qui le gère si ça t'intéresse :)
Titre: Re : Re : Framework PHP
Posté par: Helmasaur le 08 Avril 2009 à 16:15
Citation de: Binbin le 08 Avril 2009 à 15:54
Oui c'est faisable à condition que cette table soit dans la même base de données que ton appli.
D'ailleurs, la gestion de sessions de Codeigniter est vraiment bien fichu (utile pour les espaces membres)
Les sessions sont stockées automatiquement en base de données.

J'ai d'ailleurs faire une librairie qui le gère si ça t'intéresse :)
J'ai vu qu'il y faut obligatoirement utiliser une BDD. Je pensais que je pouvais créer une librairie pour en gérer plusieurs :(.
Pour les sessions, je pense que j'utiliserais le système du forum (j'ai choisi SMF - après plusieurs testes, c'est celui que j'ai choisi). Mais tout de suite, je me demande si il est possible de modifier la table du forum pour y ajouter les données de mon application en plus de ceux du forum :huh:.

Mais j'ai un mini-projet. Si c'est possible d'utiliser ta librairie, pourquoi pas ^_^.

Il ne me reste plus qu'à apprendre à utiliser CI. Et oui, j'ai choisi Codeigniter parce qu'il me semble que Symphony est plus fait pour les gros projets.
Il reste un point que j'ai pas parlé, c'est AJAX. J'ai commencé à apprendre à l'utiliser. Comment ça se passe sous CI ?


PS : rien à voir mais j'aimerais avoir des informations sur SVN si possible. Je suis intéressé sur le fait de pouvoir revenir sur une ancienne version :P.
Titre: Re : Framework PHP
Posté par: binbin le 08 Avril 2009 à 16:20
Déjà non tu n'es pas obligé d'utiliser une base de données sur CI. A toi de configurer ton appli comme tu le souhaites :)

Ensuite à partir du moment ou toutes tes tables sont dans la même base, tu peux faire ce que tu veux dans ta base (forum externe ou pas).
Il me semble que tu peux créer plusieurs instances de connexion et donc utiliser plusieurs bases avec CI (A voir)

Pour implémenter Ajax dans ton projet, c'est très facile. Il suffit de charger le js correspondant à ton framework (Mootools, Prototype/Script aculous etc) dans ta page (dans la view entre autre)

Pour ma part quand je code sur Code igniter, j'utilise les controlleurs pour les paramètres généraux d'une page avec un fichier de config par controlleur. J'utilise les modèles pour tout ce qui est interaction avec la base de données et enfin les views avec que le html à l'interieur , rien d'autre :)

Titre: Re : Re : Framework PHP
Posté par: Helmasaur le 08 Avril 2009 à 16:30
Citation de: Binbin le 08 Avril 2009 à 16:20
Déjà non tu n'es pas obligé d'utiliser une base de données sur CI. A toi de configurer ton appli comme tu le souhaites :)

Ensuite à partir du moment ou toutes tes tables sont dans la même base, tu peux faire ce que tu veux dans ta base (forum externe ou pas).
Il me semble que tu peux créer plusieurs instances de connexion et donc utiliser plusieurs bases avec CI (A voir)
Quand je parlais de modifier la table, je me demandais si le forum allait retourner une erreur en fait mais je ne pense pas finalement.

Citation de: Binbin le 08 Avril 2009 à 16:20
Pour implémenter Ajax dans ton projet, c'est très facile. Il suffit de charger le js correspondant à ton framework (Mootools, Prototype/Script aculous etc) dans ta page (dans la view entre autre)

Pour ma part quand je code sur Code igniter, j'utilise les controlleurs pour les paramètres généraux d'une page avec un fichier de config par controlleur. J'utilise les modèles pour tout ce qui est interaction avec la base de données et enfin les views avec que le html à l'interieur , rien d'autre :)
Pour la POO, je suis encore un grand débutant :(. Mais je vais voir ça plus en détail en commençant de coder.
Quand à l'AJAX, je ne connais que jQuery (et de nom encore), les autres, je ne sais pas du tout ce que c'est.

Il me reste encore beaucoup à apprendre avant de pouvoir utiliser CI correctement :mellow: !


Je remercie Binbin et Noxneo pour leur avis ainsi que leurs conseilles.
Titre: Re : Framework PHP
Posté par: binbin le 08 Avril 2009 à 16:38
Il faut bien commencer un jour :)
Titre: Re : Framework PHP
Posté par: Noxneo le 08 Avril 2009 à 22:19
Si tu veux je peux te vendre une solution PHP de ma boite, c'est de la grosse balle.  :mrgreen:

Envoie moi un MP, je te fais faire un devis :o
Titre: Re : Re : Framework PHP
Posté par: Helmasaur le 09 Avril 2009 à 10:47
Citation de: Noxneo le 08 Avril 2009 à 22:19
Si tu veux je peux te vendre une solution PHP de ma boite, c'est de la grosse balle.  :mrgreen:

Envoie moi un MP, je te fais faire un devis :o
On peut marchander :ninja: ?
Titre: Re : Framework PHP
Posté par: Helmasaur le 19 Avril 2009 à 10:57
Je trouve CodeIgniter très bien fais. J'arrive de mieux l'utiliser mais il reste encore beaucoup de fonctions à tester :).
Pour ceux qui hésiterais comme moi. Je suis très content de mon choix ^_^.

J'ai voulu faire une page donc afficher une image.

Je me demande ce qui est mieux entre :

Dans les deux cas, j'aimerais savoir où mettre les images, les feuilles de style et les scripts JS.
Titre: Re : Framework PHP
Posté par: Noxneo le 19 Avril 2009 à 14:55
Citation de: Helmasaur le 19 Avril 2009 à 10:57
Je me demande ce qui est mieux entre :

  • Utiliser les balises HTML
  • Utiliser la fonction de CodeIgniter

La deuxième option. Le moins y'a de choses codées en dur, le mieux c'est.


Citation
Dans les deux cas, j'aimerais savoir où mettre les images, les feuilles de style et les scripts JS.

L'idée est de faire un dossier "public" complètement à la racine de ton site web, sur le même niveau que ton dossier "system".
Titre: Re : Re : Framework PHP
Posté par: Helmasaur le 19 Avril 2009 à 15:17
Citation de: Noxneo le 19 Avril 2009 à 14:55
Citation de: Helmasaur le 19 Avril 2009 à 10:57
Je me demande ce qui est mieux entre :

  • Utiliser les balises HTML
  • Utiliser la fonction de CodeIgniter

La deuxième option. Le moins y'a de choses codées en dur, le mieux c'est.


Citation
Dans les deux cas, j'aimerais savoir où mettre les images, les feuilles de style et les scripts JS.

L'idée est de faire un dossier "public" complètement à la racine de ton site web, sur le même niveau que ton dossier "system".
Bizarre de ne plus du tout utiliser de HTML (ou presque) :huh: mais si c'est ce qui est conseillé, pourquoi pas.
Par défaut, c'est bien à la racine qu'il faut mettre les images du site mais je me demandais si je devais faire mes propres fonctions pour l'emplacement des images (plus proche de la vue).

Merci ^_^.
Titre: Re : Framework PHP
Posté par: Helmasaur le 26 Avril 2009 à 15:05
Un autre problème :P. Alors voilà, j'ai demandé de l'aide sur les forums de CI. J'ai à peu près eu la réponse mais je me pose une question maintenant :

Pour ne pas avoir à modifier chaque page à chaque mise à jour, il y a deux systèmes :

La première solution, je n'ai pas de problème. Mais je souhaiterais gagner du temps en n'ayant pas besoin d'inclure 3 pages dans chaque contrôleur.
Y-a-t-il une solution à ce problème ?
Titre: Re : Framework PHP
Posté par: Helmasaur le 08 Mai 2009 à 17:17
Pour le message au dessus, j'ai finalement inclus chaque partie -_-.

EDIT : Il fallait juste que le nom de la classe soit la même que celle du fichier ;).
Titre: Re : Framework PHP
Posté par: Helmasaur le 02 Septembre 2010 à 18:56
J'aimerais passer mon code en OO. Mais je ne me souviens plus trop de cette méthode de programmation. Et avec CI, je me perds un peu. Pour commencer simple, j'ai voulu faire une classe simple : News avec comme méthode insertNews qui a pour but d'ajouter une ligne dans la base de données.


<?php
class News extends Model {

private $title;

function __construct()
{
parent::Model();
}

function insertNews()
{
$news = new News;
$this->db->insert('news'$object);
}
}

/* End of file news.php */
/* Location: ./system/application/models/news.php */


Pour que ça soit de l'orienté objet, où dois-je mettre assigner la valeur provenant du formulaire vers la variable title ?
Titre: Re : Framework PHP
Posté par: Helmasaur le 04 Septembre 2010 à 12:40
Personne n'a d'idée ?
Titre: Re : Framework PHP
Posté par: A Link le 04 Septembre 2010 à 17:51
J'aurais bien aidé, mais on a pas encore commencé à étudier le framework php, C, VB, Java et ce qui va avec x)

Une petite question, framework = .net ?
Titre: Re : Framework PHP
Posté par: Helmasaur le 04 Septembre 2010 à 18:49
Citation de: A Link le 04 Septembre 2010 à 17:51
Une petite question, framework = .net ?
Non, du tout. C'est un groupe de fonctions qui permet au programmeur de coder plus rapidement.

J'aimerais juste cette petite explication. C'est la seule chose qui m'empêche d'avancer :(.
Titre: Re : Framework PHP
Posté par: Noxneo le 04 Septembre 2010 à 19:11
Tu dois implémenter un accesseur dans ta classe.

function setTitle($title){
$this->title= $title;
}

que t'appelleras du constructeur ou d'une autre fonction qui construit la news par exemple.
Titre: Re : Framework PHP
Posté par: Helmasaur le 04 Septembre 2010 à 20:32
Citation de: Guillaume le 04 Septembre 2010 à 19:11
Tu dois implémenter un accesseur dans ta classe.

function setTitle($title){
$this->title= $title;
}

que t'appelleras du constructeur ou d'une autre fonction qui construit la news par exemple.
D'accord, je vois à peu près ce qu'il faut faire. Je vais de ce pas tester.
Titre: Re : Framework PHP
Posté par: binbin le 05 Septembre 2010 à 13:15
Helmasaur, si tu veux passer entièrement en OO. Passe de Codeigniter à Kohana ^^ C'est le pied et tu ne seras pas trop déboussolé ^
Titre: Re : Re : Framework PHP
Posté par: Helmasaur le 05 Septembre 2010 à 13:19
Citation de: Binbin le 05 Septembre 2010 à 13:15
Helmasaur, si tu veux passer entièrement en OO. Passe de Codeigniter à Kohana ^^ C'est le pied et tu ne seras pas trop déboussolé ^
Je suis déjà tomber sur ce framework en cherchant des informations pour la POO mais j'ai pas aimé la documentations.

J'ai refais un tour dans la docs de Kohana et ils montrent qu'il faut ajouter chaque variable dans la BDD et non un objet. Que faut-il faire donc ?
Titre: Re : Framework PHP
Posté par: Helmasaur le 12 Septembre 2010 à 16:13
J'ai jeté de nouveau un œil à Kohana et la doc est plus complète qu'avant. Par contre, quand je télécharge la version 3.x.x, il n'y a pas le fichier config.php. Est-ce normal ?
Titre: Re : Framework PHP
Posté par: Helmasaur le 12 Septembre 2010 à 18:13
En lisant la documentation de Kohana, j'ai l'impression que son utilisation complique le code comparé à Code Igniter. Y a-t-il un réel avantage à utiliser ce fork 
Titre: Re : Framework PHP
Posté par: Noxneo le 12 Septembre 2010 à 18:34
CitationY a-t-il un réel avantage à utiliser ce fork

Ça y'a que toi qui peux y répondre. La question a te poser, c'est:

Est ce que le temps d'apprentissage du framework est inférieur au temps qu'il te faudrait pour développer les mêmes bases pour ton projet + le temps de maintenance que ça t'épargnera dans le futur?

Si oui, alors le framework marche pour toi. Si non, et bien non :P
Titre: Re : Framework PHP
Posté par: Helmasaur le 12 Septembre 2010 à 18:36
Le problème étant que j'utilise Code Igniter depuis un certain déjà et je n'ai jamais utilisé Kohana. Seulement lire la doc à plusieurs reprise. Je ne peux donc pas juger ce dernier.
Titre: Re : Framework PHP
Posté par: Helmasaur le 20 Octobre 2010 à 17:37
Quand on utiliser des accesseurs, comment leur donner une valeur ? Par exemple :
[code
<?php
class News extends Model {

  function 
__construct()
  {
    
parent::Model();
  }

  function 
setTitle($title)
  {
    
$this->title $title;
    return 
$this->title;
  }

  function 
setContent($content)
  {
    
$this->title $content;
    return 
$this->content;
  }

  function 
insertNews()
  {
    
$this->db->insert('news'$this);
  }
}
?>

La valeur de $title comment on donne cette valeur à l'attribut ? Et si on ne veut pas ajouter une news mais en afficher une de la base de données, il n'y aura pas de conflits ?
Je suppose qu'il manque quelque chose dans le constructeur pour donner les valeurs aux attributs...
Titre: Re : Framework PHP
Posté par: Noxneo le 20 Octobre 2010 à 18:16
Tu as confondu les accesseurs (aussi appellé "getter") et les mutateurs (aussi appellés "setter" ou "modificateur").

- Un accesseur te donne une valeur de l'objet (ie., tu y accèdes)
- Un mutateur te permet de modifier une valeur de l'objet

Par exemple, en code C++:


class Person{
private:
 int age;

public:
 int getAge(){return this->age;}
 void setAge(int age){this->age=age;}
};


Alors que dans ton code, tu as une espèce de fonction hybride qui modifie la variable et retourne sa valeur, ce qui est inutile puisqu'une fonction appellant un mutateur sait forcément la nouvelle valeur qui sera attribuée.

Pour répondre à ta seconde question, oui, généralement le constructeur fait aussi office de "super" accesseur, initialisant plusieurs variables de l'objet via ce qui lui est passé en paramètre:


class Person{
private:
 int age;

public:
 Person(int age){this->age=age;}
 int getAge(){return this->age;}
 void setAge(int age){this->age=age;}
};
Titre: Re : Framework PHP
Posté par: Helmasaur le 10 Novembre 2010 à 15:19
Mon projet avance bien et j'attaque l'une des plus dur classe. Y a-t-il des plug-in sympas où le système d'authentification interne est suffisant ?