[PHP5] CLASSE DE NEWS

FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 - 22 avril 2006 à 15:36
cs_m54 Messages postés 11 Date d'inscription samedi 31 mai 2008 Statut Membre Dernière intervention 8 février 2009 - 8 févr. 2009 à 14:01
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/37190-php5-classe-de-news

cs_m54 Messages postés 11 Date d'inscription samedi 31 mai 2008 Statut Membre Dernière intervention 8 février 2009
8 févr. 2009 à 14:01
Chez moi ca marche moyen, et en un fichier c'est simple d'accord mais même peut être trop
leknoppix Messages postés 3 Date d'inscription mercredi 28 février 2007 Statut Membre Dernière intervention 12 janvier 2016
20 juin 2008 à 17:03
Sa ne marche pas chez moi.
elidris Messages postés 125 Date d'inscription lundi 15 août 2005 Statut Membre Dernière intervention 9 octobre 2007
27 mai 2006 à 13:36
Salut,
je decouvres tout ca aujourd'hui, mais je ne comprend rien (lol), il faudrais que j'arrive a le faire fonctionner pour comprendre, j'ai créé la base de donnée avec le bout de code <?php CREATE TABLE....?>
mais je ne vois pas comment m'y connecter. d'habitude j'ai un truc genre include('connect.php') !!! quand je lance le fichier j'ai une erreur : Parse error: parse error, unexpected T_CLASS in W:\www\intoxitation\test_classe.php on line 2

et en ligne 2 j'ai : abstract class Objet {

comme vous voyez j'ai rien compris....
si vous pouvez m'aiguiller.
Merci
hametsu21 Messages postés 37 Date d'inscription mardi 1 novembre 2005 Statut Membre Dernière intervention 24 février 2008
8 mai 2006 à 17:14
En relation avec une gestion des membres POO (voir le tutorial de FHX) comment démarquer les méthodes reservées à l'administration ajout/supprime/edite et à tous les visiteurs lister les news/ajouter un commentaire/... sans pour autant que se soit "bordelique" un morceau de poo news dans les class de gestions d'utilisteur par exemple ?
A+
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
24 avril 2006 à 16:52
C'est vrai, tu as raison sur le point du débutant... le seul problème, c'est que je ne peux pas mettre cette source en tant qu'initié simplement parce que c'est orienté objet. Donc je me retrouve un peu au pied du mur.

Mais tu as quand même raison, quand on poste quelque chose, on se doit de le documenter un minimum pour les autres.

Je m'attache à la tache quand je le pourrais ! Merci de la remarque :)
alain04 Messages postés 25 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 27 août 2012
24 avril 2006 à 16:11
Entièrement d'accord avec toi. En fait j'ai écrit "copier/coller" comme exemple, et non pas (bêtement?) comme action. Celà dit, un débutant, ça cherche à comprendre, et pour celà il faut des détails dans les explications. Je comprends bien que ton rôle, comme celui des autres posteurs de ce très bon site, n'est pas 'forcément' celui d'un pédagogue, mais je me permet de maintenir, et ce en toute bonne cordialité, que si le niveau d'un script est donné pour débutant, la moindre des choses c'est que le "débutant" puisse le mettre en oeuvre.
Merci en tout cas d'avoir répondu, c'est bon exemple de sincérité qu'il faut souligner.
Alain
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
24 avril 2006 à 14:51
Heu, un débutant, c'est pas seulement le gars (ou la fille) qui fait un copier/coller du code bêtement ... :/

Aller, je détaille :

abstract class Objet { } // Me permet de gérer ma classe News ( initialisation de la base de donnée (que je n'ai pas fourni ici) )

class News extends Objet { } // Ma classe de news.
Examinons :

# // Supprime une news
# // Retourne un booléen : TRUE/FALSE
# public function DeleteNews($id) {
J'ai oublié de dire que $id doit être un INT ?

public function CountNews() { } // Manque d'explication sur la fonction ? Rien que le nom de la méthode me parait explicite !

public function GetUniqueNews($id) { } La c'est pareil, je récupère les infos que d'une seule news via son numéro ID.

# // $start => début de la requète
# // $limit => Nombre d'enregistrement max
# // $comm => Active la récupération des commentaires ou non
# public function GetNews($start 0, $limit 30, $comm = 'count') { }
Peut être le plus dur de ma classe. Je récupère un certain nombre de news, compris entre $start et $limit.. et j'active ou non la récupération des commentaires de la news via $comm.

# // Récupére les commentaires d'une news
# // Retourne le nombre de commentaires
# public function GetComm($id, $start 0, $limit 10) { }
Pareil ici, je récupère les commentaires pour 1 news via l'ID de la news. $start et $limit me permette de choisir le nombre de commentaires à afficher.

... Le reste est assez explicite je crois non ?


Il te faut encore de l'explication ?
Tu veux récupérer... disons les 10 dernieres news :
<?php
$news = new News; // Instanciation de classe.
$news->GetNews( $start 0, $limit 10) );
?>
Voila, tu as récupéré tes 10 news. Mais où sont elles ? Si tu regardes bien, j'ai une propriété de classe qui s'appèle $output.
$output est un tableau qui contient mes infos. Donc, pour parcourir ce tableau ==> un coup de foreach();

<?php
foreach ( $news->output as $key ) {
echo $key['titre']; // Pour le titre de la news;
echo $key['content']; // Pour le contenu
echo $key['date']; // pour la date etc...
}
?>
Après tout dépend de ce que tu récupères ... ca se passe dans tes query().
Mais comme j'ai pas inclus ma classe SQL, la source tel-quel ne peut pas marcher.

En même temps, jdemande à personne de pomper sans rien comprendre derrière.
Mais si tu veux des explications, je peux toujours essayer de te les donner.
alain04 Messages postés 25 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 27 août 2012
24 avril 2006 à 13:01
Slt,
Quand on donne un script pour DEBUTANT, il serait souhaitable que ce soit compréhensible ... par les débutants (dont je suis bien sûr)
Si je souhaite utiliser ce script et que je fait un copier/coller, il ne se passe rien du tout (et pour cause! je n'ai aucune explication quand à l'utilisation.)
Alors ce petit post s'adresse aussi à tout les nombriliste qui oublient façilement qu'ils ont été, un jour, eux aussi DEBUTANT.
GiUsTiNo Messages postés 129 Date d'inscription lundi 26 avril 2004 Statut Membre Dernière intervention 30 juin 2012
23 avril 2006 à 12:53
tu fais chier !!! ^^ non je blague :D
remet quand même ta classe mysql ici qu'on ne se fatigue pas à la chercher :p
Sinon on devine ce que tes fonctions de la classe mysql font et dans l'ensemble ca m'a l'air pas mal et assez complet pour un petit système de news...
C'est sur qu'on peut toujours trouver qqchose à rajouter, à voir :)

Bonne continuation

Giustino
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
22 avril 2006 à 15:36
J'ai oublié de dire que j'utilise ma classe Mysql dispo sur ce site.
(quoi que, je l'ai modifié depuis...)

Ca reste lisible malgrès tout !
Rejoignez-nous