Nouveau sujet Répondre Imprimer Syndication RSS 2.0

Ajouter une page dans l'administration

Flamme ardente
Avatar de Punisher
  • Age : 17 ans
  • Messages : 452
  • Inscrit : 04 Février 2006
  Lien vers ce message 29 Décembre 2006, 16:00
Bonjour,
J'ai commencé à faire une page supplémentaire pour mon forum où je listerais des tutoriaux.
Maintenant je voudrais pouvoir l'administratrer via le panneau d'admin et j'ai du mal à comprendre le fonctionnement.
Déjà je voudrais mettre un lien supplémentaire dans l'onglet "Général". Ou encore mieu, faire une nouvelle catégorie dans le menu.
Après avoir mis le lien, bien sur, je veux faire la page. Je dois donc faire un fichier php et un fichier template et modifier le fichier de langue ?
Mais voila, je bloque sur le fichier php. Voici quelques questions :
- Comment puis-je me connecter à ma base de donnée tout en gardant le meme système des autres pages ?
- J'ai du mal à voir quand je dois faire intervenir le fichier template...

Enfin voila, si quelqu'un pouvait me faire une petite page d'administration, pour lister des noms, ça serait simpa. Je voudrais juste les principaux fonctionnements, ensuite je compléterais avec ce que je veux.
Merci d'avance.
Punisher.


http://img170.imageshack.us/img170/7417/banvdesigner2oy.png
 
Equipe des MODS
Avatar de Grummfy
  • Age : 23 ans
  • Messages : 5456
  • Inscrit : 16 Septembre 2004
  Lien vers ce message 29 Décembre 2006, 16:13
les tempaltes -> lorsque tu veux afficher qqchose
le reste je ne me suis pas encore penchersur le code donc .....


"La gravité est le bonheur des imbéciles" Charles de Montesquieu > "T'as raison, L'apesanteur c'est plus rigolo" Hébus de Phalompe (Troll de Troy)
http://www.grummfy.com/download/crea/smileys/fsb2.gif Mods fsb1 - Mods fsb2 - Mon forum - Grummfy's project
 
Flamme ardente
Avatar de Tagu
  • Age : 22 ans
  • Messages : 455
  • Inscrit : 23 Septembre 2004
Message édité 2 fois, dernière édition par Tagu, 29 Décembre 2006, 16:41     Lien vers ce message 29 Décembre 2006, 16:35
Punisher, pour créer une catégorie dans l'administration, c'est assez simple. Génova nous a facilité la tache. Il te suffit simplement de créer un dossier. Pour alimenter ta catégorie, il te suffit de créer des fichiers dans ton dossier. Un petit exemple ne fera pas de mal.

Je veux une catégorie "site" et dedans je veux pouvoir "modifier" et "créer". Je vais donc créer le dossier /site dans l'administration qui contiendra les fichiers site_modifier.php et site_creer.php.
J'espère que j'ai été clair ^^

Ensuite, pour "que mettre dans ces foutus fichiers php". La encore, rien de bien compliqué. Regarde, le fichier php de base.

/*
** Mon fichier de base
*/
class Fsb_frame_child extends Fsb_admin_frame
{
	// Ici tu peux définir des variables
	var $maVariable = 'Bonjour';

	/*
	** Constructeur
	** C'est ici que débute ton fichier php
	*/
	function main()
	{
		global $tpl, $db;

		// Ici tu peux faire une requete sql
		$sql = 'SELECT * FROM ' . SQL_PREFIX . 'ma_table';
		$result = $db->query($sql);
		while ($row = $db->row($result))
		{
			echo $row['champ'];
		}

		// Ici tu t'occupe du template
		// En suivant l'exemple précédent, on va la mettre dans le dossier admin/adm_tpl/site/
		$tpl->set_file('main', 'site/adm_site_modifier.html');
	}
}


Voila, si ta des questions je suis la ^^


Découvrez SaigoNoTatakai, un monde d'inspiration oriental où l’honneur est bien plus tranchant que l’acier.
 
Flamme ardente
Avatar de Punisher
  • Age : 17 ans
  • Messages : 452
  • Inscrit : 04 Février 2006
  Lien vers ce message 29 Décembre 2006, 18:30
Ok merci pour ta réponse clair Tagu.
Je testerais.


http://img170.imageshack.us/img170/7417/banvdesigner2oy.png
 
Flamme ardente
Avatar de Punisher
  • Age : 17 ans
  • Messages : 452
  • Inscrit : 04 Février 2006
  Lien vers ce message 29 Décembre 2006, 20:10
Après avoir essayer de mettre une nouvelle catégorie, je rafraichie le menu et j'obtiens une érreur :
http://img471.imageshack.us/img471/8979/erreurkp5.png

Je n'ai pas mis l'icone du lien car je n'ai pas trouvé comment faire. C'est peut etre ça ?!

Merci d'avance.


http://img170.imageshack.us/img170/7417/banvdesigner2oy.png
 
Flamme ardente
Avatar de Tagu
  • Age : 22 ans
  • Messages : 455
  • Inscrit : 23 Septembre 2004
  Lien vers ce message 29 Décembre 2006, 20:51
Punisher, tu viens de découvrir un bug ^^ Pour y remedier, il faut modifier le fichier /main/class/class_adm_menu.php. Petit Géno à oublier le champ page_icon lors de la fonction keep_order().

Chercher
Ligne 145 : $value['cat_order'] = $cats[$value['cat']];


Ajouter apres
$value['page_icon'] = '';


Chercher
Ligne 151 : $value['cat_order'] = $max_order;


Ajouter apres
$value['page_icon'] = '';




Ensuite, Punisher, si tu veux mettre une image personnalisé, c'est facile.
Premierement, tu met l'image dans admin/adm_tpl/img/icon. Ensuite, dans ta base de donnée, tu ouvre la table fsb2_menu_admin. Tu y verra tes fichiers d'administration. Il ne te reste plus qu'a modifier le champ page_icon.


Découvrez SaigoNoTatakai, un monde d'inspiration oriental où l’honneur est bien plus tranchant que l’acier.
 
Flamme ardente
Avatar de Punisher
  • Age : 17 ans
  • Messages : 452
  • Inscrit : 04 Février 2006
  Lien vers ce message 29 Décembre 2006, 20:59
Alalah ce Genova :p

Sinon c'est ok, le menu fonctionne maintenant http://www.fire-soft-board.com/fsb/images/smileys/happy.gif Merci à toi.

Tu penses que Genova va passer par là où je doit signaler le bug dans le forum spécial ?


http://img170.imageshack.us/img170/7417/banvdesigner2oy.png
 
Flamme ardente
Avatar de Tagu
  • Age : 22 ans
  • Messages : 455
  • Inscrit : 23 Septembre 2004
  Lien vers ce message 29 Décembre 2006, 21:01
Signale le bug, ca ne fait de mal à personne ^^


Découvrez SaigoNoTatakai, un monde d'inspiration oriental où l’honneur est bien plus tranchant que l’acier.
 
Flamme ardente
Avatar de Punisher
  • Age : 17 ans
  • Messages : 452
  • Inscrit : 04 Février 2006
  Lien vers ce message 30 Décembre 2006, 13:09
Bon je suis complétement pomé dans mon code http://www.fire-soft-board.com/fsb/images/smileys/godgrace.gif
J'explique mon nouveau problème ^^"
Au lieu de faire une page pour les tutoriaux j'ai voulut commencer par quelque chose de plus simple. Sur mon forum il y a un système qui s'appel : La création de la semaine. Chaque semaine, il y a une création qui est exposer sur le header du forum. Et jusqu'a maintenant j'allait tout le temps dans le fichier template pour modifier cette création. Maintenant j'aimerais le faire avec PHP ^^"
Ce que je veux est vraiment tout con mais... je sais pas se qu'il y a mais j'y arrive pas http://www.fire-soft-board.com/fsb/images/smileys/ahh.gif
J'ai créer une table qui s'appel : creat_week avec un champ : id, url, img.
Je ne sais pas si ce champ id est vraiment obligatoire mais bon... Le champ url sert à mettre un lien vers la création. Le champ img sert à mettre une petite image cliquable où le membre sera redirigé vers l'url de la vrai image ( vous me suivez :p ? ).

Et mon problème c'est que je n'arrive pas à écrire dans la base de donnée http://www.fire-soft-board.com/fsb/images/smileys/fsb2_goutte.gif
J'ai fait plein d'essais... rien ne veut marcher. Sa fait asser longtemps que je n'ai pas coder en php et je crois que j'ai perdu la main http://www.fire-soft-board.com/fsb/images/smileys/fsb2_clown.gif.

Une fois que une url et une img sont entrer dans la base de donnée, je ne veux plus en ajouter. C'est à dire que la prochaine fois qu'il y aura une création de la semaine, je veux uniquement modifier la précédente. Mais bien sur, il faut mettre une première fois url et img. J'espère que vous avez compris, sinon j'essayerais de réexpliquer plus en détail.

Je crois que j'ai tout dit de mon problème de débutant ...
Si quelqu'un pouvait m'aider, je le remerci d'avance ^^ Une fois que j'aurais fait ce fichier php je pense que je n'aurais pas de mal avec le fichier template ( à moin que mon problème vient du fichier tpl ).

Inutile de vous donner mon fichier php actuelement ...

Punisher.


http://img170.imageshack.us/img170/7417/banvdesigner2oy.png
 
Flamme ardente
Avatar de Tagu
  • Age : 22 ans
  • Messages : 455
  • Inscrit : 23 Septembre 2004
  Lien vers ce message 30 Décembre 2006, 14:30
Premierement, Punisher, va lire des docs php et sql pour reprendre la main.
Pour ce qui concerne les requete sql, rien de bien compliqué.

// Pour insérer une ligne dans la base de donnée
$sql = 'INSERT INTO creat_week (id, url, img) VALUES (\'' . $id . '\', \'' . $url . '\', \'' . $img . '\')';
$db->query($sql);

// Pour modifier ta ligne dans la base de donné
$sql = 'UPDATE creat_week SET url=\'' . $url . '\', img=\'' . $img . '\'';
$db->query($sql);


Découvrez SaigoNoTatakai, un monde d'inspiration oriental où l’honneur est bien plus tranchant que l’acier.
 
Equipe de support
Avatar de B.Moncef
  • Age : 17 ans
  • Messages : 1926
  • Inscrit : 10 Septembre 2005
Message édité 1 fois, dernière édition par B.Moncef, 30 Décembre 2006, 15:44     Lien vers ce message 30 Décembre 2006, 15:42
est ce que tu selectionne juste une creation au hasard parmi les autres ? ou tu as des criteres de selection ? dans tous les cas je pense qu'il est possible d'eviter une nouvelle table non ?

PS : je pense aussi qu'il y a des fonctions genre query_insert() ou query_update() pour les insert et updates, faut regarder du coté main > dbal > la classe pour mysql (je pense dbal_mysql.php)
 
Flamme ardente
Avatar de Punisher
  • Age : 17 ans
  • Messages : 452
  • Inscrit : 04 Février 2006
Message édité 1 fois, dernière édition par Punisher, 30 Décembre 2006, 19:06     Lien vers ce message 30 Décembre 2006, 19:04
On a un critère de selection, mais moi je veux juste afficher le lien de la création dans le header du forum.


Et je m'enbrouille beaucoup avec les templates -_-

Je vais refaire des essais...

Edit : Bon je me suis dit que modifier un fichier tpl une fosi par semaine n'est pas dramatique. C'est pourquoi je ne mettrais pas de PHP pour ce système de création de la semaine.
Mais j'ai tout de suite enchéné sur autre chose.
Un système qui liste les partenaire.
Encore un système simple, mais cette fois je me suis inspirer d'un code déjà présent dans l'administration pour réaliser cette page.
Voici ce que j'ai fait ( 4 fichiers ) :
~/admin/site/site_accueil.php
~/admin/admin/adm_tpl/files/site/adm_partners.html
~/admin/admin/adm_tpl/files/site/adm_partners_add.html
~/lang/fr/admin/lg_site_accueil.php

Malheuresement, losque je veux mettre un nouveau partenaire ( j'entre donc URL et BANN ) et bien on me redirige directement sur site_accueil.php sans me dire que mon partenaire a bien été ajouté. Et bien sur, il y a toujour le "aucun partenaire" dans site_accueil.php ( module partners, bien sur ). Donc j'en conclut que rien ne s'écrit dans la base de donnée... mais pourquoi ? je ne vois pas mes érreurs :'(
Sinon pour le moment j'ai fait que le module "partners", donc le fichier ~admin/site/site_accueil.php n'est pas complet.

Voila je fais encore appel à votre gentillesse pour corriger mes fichier avec certainement pas mal d'érreurs ^^"
Merci d'avance.


http://img170.imageshack.us/img170/7417/banvdesigner2oy.png
 
Flamme ardente
Avatar de Tagu
  • Age : 22 ans
  • Messages : 455
  • Inscrit : 23 Septembre 2004
  Lien vers ce message 30 Décembre 2006, 19:39
Premièrement, pour te dire que tu as bien enregistrer, tu peux utiliser, apres l'insertion dans la base de donnée, la fonction message(). On l'utilise comme ca :

message('message à afficher ou un $lg', 'url du lien', 'variable $lg du return to')


Découvrez SaigoNoTatakai, un monde d'inspiration oriental où l’honneur est bien plus tranchant que l’acier.
 
Flamme ardente
Avatar de Punisher
  • Age : 17 ans
  • Messages : 452
  • Inscrit : 04 Février 2006
Message édité 5 fois, dernière édition par Punisher, 31 Décembre 2006, 13:50     Lien vers ce message 30 Décembre 2006, 19:57
Je l'ai mise cette fonction dans la fonction qui envois le formulaire.
Si je l'a met dans la fonction qui affiche le formulaire, je ne verrais pas le formulaire, il me dira directement : redirection.
Mais bon, en mettant cette fonction dans la partie de l'envois, je ne vois pas la confirmation une fois le formulaire envoyé :'(
Mais ce que je voudrais surtout c'est que le formulaire s'enregistre dans la base de donnée.

Sinon c'est quoi la variable $lg du retour to ?

Encore merci pour ton aide ;)

EDIT :
Bon maintenant j'ai réusi à faire apparaitre le message pour me dire que le partenaire a bien été ajouté mais il y a toujour rien qui s'enregistre dans la base de donnée...
Je n'arrive pas à comprendre. Voici mon fichier site_accueil.php modifié :
~/admin/site/site_accueil.php


http://img170.imageshack.us/img170/7417/banvdesigner2oy.png
 
Flamme ardente
Avatar de Punisher
  • Age : 17 ans
  • Messages : 452
  • Inscrit : 04 Février 2006
  Lien vers ce message 31 Décembre 2006, 18:42
Up, personne peut m'aider svp ?

Je pense que c'est à cause de l'id. Lorsque je met un nouveau partenaires et pendant qu'il me redirige je vois le lien :
~admin/index.php?p=site_accueil&mode=add&id=0
Alors que normalement ca devrait etre : id=1, non ?
Mais je ne trouve pas l'érreur :'(


http://img170.imageshack.us/img170/7417/banvdesigner2oy.png
 
Répondre


.