Table des matieres (X)

Chut, ca charge ...

Tutoriel administration MySQL PHP rapide et facile


phpmyedit Bonjour tout le monde ! Aujourd'hui est un grand jour car vous allez enfin apprendre comment faire une administration de base de données MySQL en PHP complètement adaptable à vos besoin très facilement et rapidement grâce à PHPMyEdit.

Vous pourrez ainsi administrer votre gallerie AJAX ou encore votre application Google Map que l'on a abordé dans les derniers tutoriels.

Allez hop , on clique sur la suite !

C'est quoi PHPMyEdit ?

PHPMyEdit génère du code PHP pour afficher/éditer des tables MySQL en HTML. Il inclut de nombreuses options de manipulations de base de données (enregistrer,ajouter,voir,copier,supprimer), ordre d'affichage, filtres, liaisons de tables et bien plus.

Mais nous allons voir tout cela en détail grâce à un exemple concret.

Un exemple concret

Alors pour notre exemple, autant faire un truc utile, nous allons lier la galerie ajax à une base de donnée que nous allons créer ensemble grâce à l'outil SQL Designer.

On va faire simple pour notre galerie : chaque photo aura une description,un libellé, un fichier associé et fera partie d'une catégorie.

Tu peux faire mumuse avec l'admin en cliquant sur l'image ci dessous. (j'ai désactivé la suppression pour pas que tu fasses trop le fou)

tutoriel_admin_phpmyedit_resultat_final

Conception de la base de donnée

On va commencer par créer notre mini MCD (Modèle Conceptuel de Données) avec l'outil SQL Designer en ligne afin d'avoir le code SQL nécessaire à la création de la base.

mcd_galerie_ajax

Comme je suis sympa je vous file le code XML pour obtenir directement le résultat ci-dessus (Import -> Import XML et faites copier coller)

XML:
  1. <!-- WWWSQLEditor XML export -->
  2. <sql></sql>
  3. <table id="0" title="photo" x="313" y="140"><row></row>   <default>0</default>
  4. <type>Integer</type><row id="1" special="100"></row><default></default>
  5. <type>String</type>
  6.  
  7. <row id="2"></row>
  8.  
  9. <default></default>
  10. <type>Text</type>
  11.  
  12. <row id="3" nn="nn" special="255"></row>
  13.  
  14. <default></default>
  15. <type>String</type>
  16.  
  17. <row id="4" fk="fk"></row>
  18.  
  19. <default>0</default>
  20. <type>Integer</type></table>
  21. <table id="1" title="categorie" x="40" y="140"><row></row>      <default>0</default>
  22. <type>Integer</type><row id="1" special="30"></row><default></default>
  23. <type>String</type></table>
  24. <relation></relation>
  25. <table_1>1</table_1><row_1>0</row_1>
  26. <table_2>0</table_2><row_2>4</row_2>

Maintenant qu'on a notre MCD de fait, on va récupérer le code SQL (=Langage de requêtes structuré) qui nous interesse en faisant Import -> Generate MySQL Script. Mais comme je sais que vous êtes des flemmards voulez gagnez du temps, je vous refile direct le code SQL. Oui je sais je suis un peu trop sympa.

SQL:
  1. CREATE TABLE `photo` (
  2. `id` INTEGER AUTO_INCREMENT ,
  3. `libelle` VARCHAR (100)  DEFAULT '',
  4. `description` MEDIUMTEXT DEFAULT '',
  5. `fichier` VARCHAR (255)  NOT NULL DEFAULT '',
  6. `cat_id_categorie` INTEGER DEFAULT '0',
  7. PRIMARY KEY (`id`)
  8. );
  9.  
  10. CREATE TABLE `categorie` (
  11. `cat_id` INTEGER AUTO_INCREMENT ,
  12. `cat_libelle` VARCHAR (30)  DEFAULT '',
  13. PRIMARY KEY (`cat_id`)
  14. );

Création de la base de donnée

<< Génial on a un code SQL ! Merci beaucoup ! >>

Et bien non ce n'est pas terminé, petit padawan, maintenant il te faut créer cette base de donnée sur ton serveur/hébergeur.

Si tu travailles en local, je te conseille d'installer WAMP. C'est un serveur PHP 5 / MySQL que je trouve meilleur que EasyPHP.

Pour cela on va aller dans phpMyAdmin , on va créer notre base galerie_ajax puis on clique sur l'onglet SQL et on balance notre super code SQL et on clique sur éxécuter.

Et voilà, notre base est créee ;) Passons maintenant à PHPMyEdit.

Installation de PHPMyEdit

On va commencer par télécharger PHPMyEdit amélioré (c'est une version modifiée par mes soins qui inclus l'upload d'images et quelqu'autres améliorations, ainsi que quelques traductions) puis on va le décompresser dans un repertoire galerie_ajax dans le repertoire PHPMyEdit .
Libre à vous de prendre la version officielle plus récente mais qui n'apporte pas vraiment de nouveautés. (et qui ne vous permettra pas de bien suivre ce tuto)

Création de l'arborescence

On va faire un truc propre, ca va ĂŞtre Ă  peine plus long mais ca nous permettra par la suite de gagner plus de temps.

Voila Ă  quoi de ressembler notre arborescence :

arbo_tutoriel_phpmyedit

Dans admin, se trouveront les fichiers générés, vérifier donc que le dossier admin est bien en CHMOD 777, c'est à dire avec les droits d'écriture.

On décompresse ensuite phpMyEdit dans le repertoire lib(pour librairie).

Et on fait un repertoire galerie dans lequel nous mettrons les fichiers de notre galerie.

Enfin un repertoire upload qui recevra les images.

Création de l'administration

Nous allons maintenant générer en toute simplicité les fichiers nécessaires à notre panneau d'administration.

Tu ouvres ensuite ton navigateur et tu te rend Ă  cette adresse:

http://TON SERVEUR/galerie_ajax/lib/phpMyEdit/phpMyEditSetup.php

Tu suis ensuite les étapes en remplissant les formulaires:

  • se connecter Ă  la base (si tu utilise WAMP en local : host : localhost , user : root , pas de mot de passe , base : galerie_ajax , table : categorie)
  • selection de la base qu'on a crĂ©ee prĂ©cedemment (normalement galerie_ajax)
  • on selectionne la table categorie
  • tu spĂ©cifies quel champ est la clĂ© primaire (=identifiant), dans notre cas c'est cat_id
  • on laisse le nom par dĂ©faut (categorie)

Et voilà , votre fichier categorie.php est crée automatiquement dans le repertoire admin. Pour le voir il suffit de se rendre à cette adresse:

http://TON SERVEUR/galerie_ajax/admin/categorie.php

Ca ne marche pas pour l'instant mais c'est normal, nous devons d'abord crée nos fichiers de config et mise en page.

Il faut refaire ensuite la même manip avec cette fois ci comme nom de table photo afin de générer photo.php .

Création des fichiers de config et de mise en page

Nous allons crée 2 fichiers dans le repertoire lib .

Premièrement le fichier lib/config.php permettant la connexion à la base de donnée :

PHP:
  1. // Informations de connexion pr phpmyedit
  2. $opts['hn'] = "localhost"; //ou la base est situee
  3. $opts['un'] = "root"; // utilisateur
  4. $opts['pw'] = ""; //mot de passe de la BDD
  5. $opts['db'] = "galerie_ajax"; //nom BDD
  6.  
  7. //pr menu onglet
  8. $tab_menu = ARRAY( 'categorie.php' =&gt; "Categorie" , 'photo.php' =&gt; "Photo" );
  9.  
  10. //connexion a la base de donnée
  11. $db=MYSQL_CONNECT($opts['hn'],$opts['un'],$opts['pw']) or die("Impossible de se connecter à la base de données");
  12. mysql_select_db($opts['db'],$db) or die("Impossible de selectionner la base") ;

Deuxiemement le fichier lib/fonctions_divers.php dans lequel nous allons déclarer 2 fonctions définissant le haut et le bas de chaque page de l'administration :

PHP:
  1. /////////////////////////
  2. //pr admin
  3. /////////////////////////
  4. function haut_page($titre) {
  5.  
  6. global $tab_menu ;//pr recup du fichier config
  7.  
  8. ?&gt;
  9.  
  10. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  11. <link href="../lib/phpMyEdit/css/admin.css" rel="stylesheet" type="text/css" />     <!--specifique et necessaire  a l'upload de fichier-->
  12. <script src="../lib/phpMyEdit/scripts/fileupload.js" type="text/javascript"></script>
  13. <p id="tabs6">&nbsp;</p>
  14. <h1></h1>
  15. <ul>                               //pour afficher les onglets
  16. foreach ($tab_menu as $k =&gt; $v) {                if(strstr($_SERVER['SCRIPT_FILENAME'],$k))
  17. $current = "current"; //si c l'onglet actuel
  18. else
  19. $current = "";echo "
  20. <li id="\"><a href="http://fardeen.biz/wp-admin/%5C%22$k%5C%22"><span>$v</span></a></li>
  21. ";
  22. }
  23. ?&gt;</ul>
  24. }
  25. function bas_page() {
  26. ?&gt;
  27. }

Enfin tout ce qui concerne la mise en page et le graphisme est dans phpMyEdit/css/admin.css.

Premiers tests

Nous pouvons enfin voir un début de résultat qui nous a demandé des efforts surhumains en se rendant à cette adresse :

http://TON SERVEUR/galerie_ajax/admin/categorie.php

phpmyedit_admin_premiere_etape

Tu peux maintenant ajouter, éditer et supprimer toutes tes catégories. Tu peux meme rechercher ! Et ce sans te galérer 4 heures ;) (pour le menu en onglets, j'ai utilisé CSS tab designer )

On va enregistrer 2 catégories (moi j'ai mis blonde et brune).

Personnalisation et options de PHPMyEdit

Comme on peut le voir dans la documentation de phpMyEdit, celui ci possède une pléthore d'options mais nous n'aborderons que les principales, je vous laisse le plaisir de vous documenter un peu pour le reste ;)

Lier 2 tables

Bon alors quand on veut ajouter une photo , il faut rentrer la valeur de l'id de la catégorie à la main :

admin_phpmyedit_ecran1

Pas très pratique... Nous allons donc remédier à ce problème.

On va éditer notre fichier photo.php et on va créer une liaison entre ce champ et la table categorie en modifiant légerement notre code comme suit:

PHP:
  1. //pr clé étrangere
  2. //quel table en liaison
  3. $opts['fdd']['cat_id_categorie']['values']['table'] = 'categorie';
  4. //quel champ identifiant
  5. $opts['fdd']['cat_id_categorie']['values']['column'] = 'cat_id';
  6. //quel champ afficher pour le libelle
  7. $opts['fdd']['cat_id_categorie']['values']['description'] = 'cat_libelle';
  8. /*
  9. //On peut même spécifier plus en détail ce qu'il y aura dans la liste Déroulante , ex : id.libelle
  10. $opts['fdd']['cat_id_categorie']['values']['description']['columns'][0] = 'cat_id';
  11. $opts['fdd']['cat_id_categorie']['values']['description']['columns'][1] = 'cat_libelle';
  12. $opts['fdd']['cat_id_categorie']['values']['description']['divs'][0] = '.';  //caractère separateur
  13. */

Vous pouvez vérifier le résultat de photo.php.

Upload de fichier , création des miniatures et trigger

Pour le fichier, on voit que c'est un simple champ texte. On va donc le transformer en champ 'Parcourir...' afin de pouvoir selectionnez une image et l'envoyer sur le serveur. On en profitera également pour créer des miniatures de l'image envoyée en 2 formats, grâce à l'excellente classe PHP phpThumb, qui permet de générer des miniatures avec un choix d'options impressionnants. (J'ai intégré phpThumb dans cette version modifiée de phpMyEdit donc ca nous prendra une ligne de code pour la génération de miniatures ) )

PHP:
  1. //options du champ fichier
  2. $opts['fdd']['fichier'] = array(
  3. 'name'     =&gt; 'Fichier',
  4. 'select'   =&gt; 'T',
  5. 'maxlen'   =&gt; 255,
  6. 'required' =&gt; false, //pr eviter erreur JS
  7. 'sort'     =&gt; true,
  8. 'input'      =&gt; 'F', //type fichier
  9. 'imagepath'  =&gt; "../upload/", //on definit le chemin ou sera mis l'image
  10. 'URL'        =&gt; '../upload/$key.$value', //permet de crĂ©er le lien sur le fichier , lorsqu'on regarde la liste des enregistrement, ($key permet d'avoir un nom de fichier unique)
  11. 'URLtarget'  =&gt; '_blank', //spĂ©cifie que ca l'ouvre ds une autre page,
  12. 'thumb_width' =&gt; array(100, 320), //on va créer 2 miniatures , dans 2 tailles differentes
  13. 'options'    =&gt; 'ACPVDFL',
  14. 'size|ACP'   =&gt; 60,
  15. 'help' =&gt; 'Ne pas mettre des photos trop cochonnes.  JPG uniquement.',
  16. 'sqlw'       =&gt; 'TRIM("$val_as")'
  17. );
  18.  
  19. //TRIGGER = declencheur
  20. //pr upload apres l'insertion
  21. $opts['triggers']['insert']['after'] = 'triggers/uploader.php';
  22. //ou avant la modification
  23. $opts['triggers']['update']['before'] = 'triggers/uploader.php';
  24. /*
  25. on peut lancer un fichier avant un update par ex
  26. $opts['triggers']['update']['before'] = 'action.php';
  27. // Apres avoir annulé un ajout ou copie
  28. $opts['triggers']['insert']['cancel'] = 'action.php';
  29. //liste de declencheur
  30. $opts['triggers']['update']['before'][1] = 'deuxieme_action.php';
  31. $opts['triggers']['update']['before'][0] = 'premiere_action.php'
  32. Plein d'autres possibilités dans la doc&gt; http://platon.sk/projects/doc.php/phpMyEdit/html/configuration.triggers.html
  33. */

On obtient :

Et TADA! vous avez une administration fonctionnelle !

Les autres possibilités de PHPMyEdit

Le reste des joyeusetés ;) je vous laisse le découvrir dans la documentation. Vous y découvrerez entres autres :

Liaison de la base de données avec la galerie AJAX

Afin de ne pas trop surcharger ce tutoriel et parcque j'ai la flemme pour ne pas trop s'éloigner du thème principal qui est la création d'une administration rapide, fonctionnelle et puissante , je ne détaillerai pas ici pour la liaison avec notre galerie AJAX que nous avions vu avec Mootools mais les fichiers site/galerie_ajax.php et site/recuperer_photo.php sont assez bien commentés donc je te laisse le loisir de voir les quelques changements que j'ai apporté pour lier la galerie à la base de données.

Et tu peux voir le résultat de notre galerie lié à notre base de données (dans l'idéal il faudrait des sous catégories mais bon c'est pas l'objectif de notre tuto) en cliquant sur l'image ci-dessous.

resultat_final_galerie_ajax_phpmyedit

Conclusion

Comme je suis super sympa , je vous file une archive qui contient tout ce qu'on vient de voir, y a plus qu'a télécharger, décompresser et tester.

Voila , phpMyEdit n'a plus de secret pour vous, j'espère que ce tutoriel vous a plu, comme d'hab si vous avez remarques, questions, faites pas vos timides et lachez vos com' D

detente apres phpmyedit

Billets en relation


112 réponses à “Tutoriel administration MySQL PHP rapide et facile”

Très bon tuto, merci!

Juste un détail: le lien vers la version modifiée de phpMyEdit ne fonctionne pas (

JP le 22 janvier 2007 15:18 |

Très bon tuto, merci!

Juste un détail: le lien vers la version modifiée de phpMyEdit ne fonctionne pas (

JP le 22 janvier 2007 15:18 |

Merci pour la remarque : c'est corrigé )

Fardeen le 23 janvier 2007 4:53 |

Merci mec !
Exellent le tuto, bravo Ă  toi !
++

myrddin le 7 février 2007 20:02 |

Je voulais un exemple pour loader des images avec une gallerie.. j'ai tout trouvé sur ce site..

MERCI

je commence à faire du php.. en Java y aurait pas eu de problèmes )

Sébastien le 17 février 2007 21:40 |

dans ton exemple, pourquoi tu n'as pas mis les images dans la DB au lieu des avoir sur ton disque dur ?

Sébastien le 18 février 2007 1:09 |

Je ne comprend pas tres bien la question sebastien ...

Les images ca se stocke pas dans la base, on enregistre juste le nom du chemin pour y parvenir sur le dur.

Fardeen le 22 février 2007 14:41 |

bravo pour l'excellent tuto !! ehh ainsi que les photos... :-)
on attent le prochain !!

jo le 24 février 2007 18:29 |

Bonjour, félicitation pour le tuto. Je voulais savoir comment faire pour mettre en cache les cartes renvoyées par google maps en utilisant la méthode du tuto en sachant que les cartes de google maps ne sont pas des images communes. J'ai cherché un moyen mais je n'arrive qu'à faire de l'optimisation de requête avec la base de données.
Merci d'avance.

Thierry le 6 mars 2007 23:26 |

Salut,

je sais pas si ton commentaire est a la bonne place mais c'est pas tres grave )

Pour repondre a ta question, la mise en cache des images , c'est l'API Google Map qui s'en charge. Tu ne peux pas le faire toi meme et d'ailleurs je n'en vois pas l'interet. La seule optimisation a faire , c'est au niveau des requetes Geocode (qui permettent d'obtenir les longitudes et latitudes d'une adresse).

J espere avoir repondu a ta question )

Fardeen le 7 mars 2007 1:46 |

[...] pouvez consultez le tutoriel sur la super administration de base de données, facilement réalisable et modifiable avec PHPMyEdit, pour que vous puissiez par exemple lier la [...]

Tutoriel Mootools, la suite (Drag’n Drop et Cookie) < Fardeen GHULAM le 9 mars 2007 19:56 |

bonjour,

le chargement d'une image dans la démo donne :

Warning: move_uploaded_file(../upload/31.20060909_01.png) [function.move-uploaded-file]: failed to open stream: Permission denied in /home/.pele/fardeen/fardeen.biz/wp-content/uploads/tutoriel/galerie_ajax/lib/phpMyEdit/triggers/uploader.php on line 61

un petit problème ?

Boullu le 19 mars 2007 10:07 |

Merci de me le faire remarquer. Le pb est regle, c'etait juste un oublie de CHMOD de ma part.

J'en ai profite pour faire un peu de menage et regle un bug au niveau du chargement du caddie.

Fardeen le 19 mars 2007 14:40 |

re bonjour

Je suis en train de faire le tuto avec la base de données mais le lien pour télécharger le phpedit modifié ne fonctionne pas, sinon super je connaissais pas ce truc. Merci

Mac le 28 mars 2007 16:25 |

Je viens de tester le lien est fonctionnel.

Fardeen le 28 mars 2007 17:40 |

Bonjour,

Pour vous dire que j'ai réussi votre tuto, et veuillez m'excusez du post sur le lien non valide car j'ai pu le télécharger non pas avec IE mais avec FireFox, bizarre mais bon.

Merci aussi pour PHPEDIT outils formidable, dire que je faisais cela Ă  la main pour mes admin d'applications, ca aide.

PS : Je me suis permis de mettre votre lien sur mon site ;)

Mac le 29 mars 2007 12:28 |

re bonjour,
j'aurais une question, comme je vous l'ai dit j'ai réussi votre tuto sur la galerie ajax avec php edit, de ce fait j'ai une base de donnée unique, et j'y est créé les deux tables categories et photo, mais je me poser la question, peut on administrer une autre table de cette meme base de donnée apparement oui, mais lorsque que je génére le fichier et que je le visionne, je me retrouve avec les deux onglets des deux fichiers générés auparavant de la galerie alors ma question doit on créer un nouveau dossier avec le meme système d'aroborescence avec le meme phpedit qui a servi pour la galerie ou doit on utiliser un nouveau php edit. Je pensé à cela car comme dans ma base j'ai une trentaine de table, j'aurais aimé pouvoir les administrer avec php adit, quel est votre avis sur la question, je fait faire un autre essai et je vous tiendrais au courant, merci de la réponse que vous me donnerais.
Mac

Mac le 29 mars 2007 13:06 |

Je pense avoir trouvé, c'est le fichier config.php ou il faut définir dans cette ligne de code
$tab_menu = ARRAY( 'categorie.php' => "Categorie" , 'photo.php' => "Photo" ); tous les fichiers que l'on va générer. comme cela peut faire un back office d'un site de gestion de base de donnée

Mac le 29 mars 2007 13:26 |

Oui c'est ca Mac, les onglets et le design , c'est uniquement dans ma version modifiée.

J'ai fait ca pour moi a la base c'est pour ca que c'est pas optimise a fond, dans l'ideal il faut juste faire un ptit script qui parcourt les fichiers presents dans le dossier admin et qui les listes sous formes d'onglets.

Mais bon modifie une fois le fichier config.php n'est pas insurmontable ;)

Et aucun souci pour 30 tables , ca marche pareil ;)

Et on se tutoie la prochaine fois )

PS: c'est quoi ton site ?

Fardeen le 29 mars 2007 22:42 |

Très bon tuto qui donne vraiment envie de tester le produit cependant le lien vers la version modifiée de phpMyEdit ne fonctionne pas.
Je n'ai pu que télécharger la version standard.

tt le 14 mai 2007 8:48 |

Je ne comprends, je viens de tester les 2 liens a l instant et ca marche tres bien.

(l'archive finale contient egalement le phpmyedit modifié)

Merci de me confirmer que ca marche aussi chez toi )

Fardeen le 14 mai 2007 13:18 |

J'ai réessayé sous firefox ça fonctionne bien.
Je ne sais pas pourquoi ce lien ne fonctionne pas sous MSIE 6 peut-ĂŞytre parcequ'il y a 3 slashs ?

http:///fardeen.biz/wp-content.....ersion.zip

tt le 14 mai 2007 14:57 |

Quelle merde cette IE...

JE vais faire un script pour bloquer les vilains visiteurs qui utilise encore cette merde.

Fardeen le 14 mai 2007 18:07 |

Bonjour Fardeen et encore bravo pour ce super tuto !!!
Je te passe un bonjour de BESANCON qui dois te rappeler des souvenirs ...
Voila ce qui m'amène :

* j’ai un souci avec les boutons de navigation qui restent grisés alors que $opts['navigation'] = 'GBD'

* comment adapter PhpMyEdit pour pouvoir gérer dans le formulaire des listes déroulantes liées (comme dans cet exemple où le choix du département déclenche un filtre de la table commune : )
http://213.186.37.71/~demos/adresse/test.php

Merci d’avance
@+
Patrice

COQUET le 24 mai 2007 10:00 |

Salut coquet le bisontin D

S'ils sont grisés , c'est qu'il y a une raison . Le "GBD" signifie juste Boutons sous forme Graphiques en Bas. (http://platon.sk/projects/doc.php/phpMyEdit/html/configuration.navigation.html) . Ca n'influent donc pas sur le grisage.

Apparement pour la deuxiemen question tu as deja reussi ;)

Fardeen le 24 mai 2007 13:49 |

Salut,

je comprends pas très bien le code du script fonctions_divers.php (qui est d'ailleurs appelé fonction_divers.php dans categorie.php ligne 17)

ici :

PHP:
  1. function haut_page($titre) {
  2. global $tab_menu ;//pr recup du fichier config
  3. ?&gt;
  4.  
  5.      <!--specifique et necessaire  a l'upload de fichier-->
  6.                                //pour afficher les onglets
  7. foreach ($tab_menu as $k =&gt; $v) {                if(strstr($_SERVER['SCRIPT_FILENAME'],$k))
  8. $current = "current"; //si c l'onglet actuel
  9. else
  10. $current = "";echo "
  11. <a href="http://fardeen.biz/wp-admin/%5C%22$k%5C%22" rel="nofollow">$v</a>
  12. ";
  13. }
  14. ?&gt;
  15. }
  16. function bas_page() {
  17. ?&gt;
  18. }

euh ? c'est un peu embrouillé ....

merci de m'éclairer.

boullu le 19 juin 2007 15:56 |

Ces deux fonctions ne servent uniquement qu'a la mise en page.

Elles servent a creer les onglets qui te permettent de navigeur entre les differentes pages, celles que tu definis dans ton fichier config.php.

Bien entendu libre a toi de les utiliser ou pas ) Il suffit de desactiver l'appelle a ces fonctions dans chacun des fichier PHP que tu va generer .( J'ai intégré l'appel a ces fonctions directement dans la generation des pages mais tu peux les enlever sans pb)

Voila ;)

Fardeen le 19 juin 2007 16:18 |

merci d'avoir répondu rapidement
J'ai très bien vu comment désactiver l'appel de ces scripts.

Je faisais juste une remarque sur le code ci dessus. A mon avis, ce code ne passe pas dans une page ...
mais je peux me tromper !

cordialement
IB

boullu le 19 juin 2007 16:35 |

je ne vois pas ce que l'appel Ă  wp-admin vient faire dans le code dont je parlais :

#
$v
#

boullu le 20 juin 2007 8:15 |

Quand tu met du code PHP, tu peux utiliser les balises

[ php ] sans les espaces et [ /php ]

Fardeen le 20 juin 2007 13:09 |

Bonjour,

très bonne source d'infos ... bravo. Je rencontre un problème car j'ai décidé d'utiliser la classe /lib/phpMyEdit/extensions/phpMyEdit-mce-cal.class.php plutôt que /lib/phpMyEdit/phpMyEdit.class.php afin de pouvoir gérer les champs de dates plus facilement. Logiquement celle-ci étend phpMyEdit.class donc tout changement que tu aurais pu apporter à phpMyEdit.class devrait ce retrouver dedans mais malheureusement phpThumb ne fonctionne plus. Ou plutôt je ne retrouve plus le petit bouton à côté du champ image. Cela indiquerait que les changements que tu as apportés pour pouvoir intégrer phpThumb à ta version se trouve ailleurs ... pourrais-tu m'éclairer sur ce point obscur ???

Merci d'avance.

Soulelec le 10 juillet 2007 13:04 |

Salut,

je n'ai actuellement pas le temps de te répondre en détails (je suis en vacances ;) ) mais je peux juste te dire que je ne conseille pas l'utilisation de mce-class. Si tu veux ajouter des champs date, tu as plus vite fait de le faire avec Mootools en Javascript.

C'est plus simple et plus souple.

Bon courage.

Fardeen le 11 juillet 2007 1:32 |

Bien,

merci et bonne vacances ;-)

Soulelec le 11 juillet 2007 7:06 |

Bonjour,

Superbe tuto ! cependant, je n'arrive pas à le mettre en oeuvre, j'ai donc cru à une mauvaise manip' de ma part, je télécharge donc l'archive, transfère le tout vers mon serveur FTP, je change le nom de la base car c'est mon hébergeur gratuit qui l'a choisie pour moi, rentre les identifiants et la j'ai une erreur monstreuse : http://eclairage.o-n.fr/galerie_ajax/ quelqu'un pourrait m'aider ? le fichier galerie_ajax.php doit renfermer une erreur mais laquelle ??! Please HELP ME !
Par avance merci pour votre aide :-)

Jean le 12 juillet 2007 17:38 |

Hourra ! ça fonctionne ! :-) c'était winrar qui m'avais "manger" une partie du code présent dans le fichier galerie_ajax.php, en revanche j'ai un autre problème, et pas des moindres :S quand je souhaite ajouter une autre photo depuis la page gestion de photo j'ai deux erreurs juste après l'upload de l'image :
Erreur (size=100)
phpThumb() v1.7.5-200610032215 Unknown image type identified by "" () in SourceImageToGD()[3102]
...

Erreur (size=320)
phpThumb() v1.7.5-200610032215 Unknown image type identified by "" () in SourceImageToGD()[3102]
...

Et quand je reviens sur la page, la nouvelle entrée s'affiche, sauf l'image... alors qu'elle est bien présente sur le serveur FTP.
Quelle galère !
S'il vous plaît, aidez moi !
Je ne sais vraiment pas d'ou peu venir le problème..
Par avance merci BEAUCOUP pour votre aide ;-)

Jean le 12 juillet 2007 18:00 |

Verifie que tu as bien les droits d'ecriture sur ton dossier d'upload (chmod 777 avec ton logiciel FTP sur le dossier)

Fardeen le 13 juillet 2007 17:50 |

Salut,

Merci pour ton Tuto qui m'a permis d'énormement avancer!
J'ai juste quelques points sur lesquels j'aimerais avoir des précisions :

1) Au sujet de la creation des miniatures, ça n'a pas l'air de marcher chez moi... j'ai pas trouvé ou changer le repertoire de destination mais je sais pas si ça vient de là...

2) quand je supprime des élements de mes tables, ça se repercute bien sur la table, par contre ça ne supprime pas les images correspondantes dans le repertoire "upload".

3)quand je supprime puis rajoute des elements dans mes tables, l'id de mes elements ne se reinitialise pas (ex: j'ai 3 entrees dans une table avec comme id 0,1,et 2. si je les suppprime et que j'en crée 3 nouveaux, les id seront 3,4 et 5) Est ce que c'est normal?

Désolé pour ces questions de néophyte.
Encore merci pour ce tuto en tout cas.

Sanket

Sanket le 5 août 2007 17:00 |

salut !

En fait, j'ai trouvé mon problème concernant la creation des miniatures :
J'avais pas activé la librairie GD2 dans mon easyphp donc les classe phpThumb() ne marchaient pas...
Désolé !

Sanket

Sanket le 6 août 2007 14:03 |

Salut sanket ,

1)resolu ;)
2) Oui ca ne supprime pas les images, je ne l'ai pas fait. MAnque de temps. Mais n'hesite pas , fais toi plez, ca prend pas ltps ;)

3)Oui c'est normal. L'id est un champ autoincrement, c'est a dire qu'a chaque requete INSERT que tu fais , il s'incremente tout seul comme un grand . Sa valeur n'a aucune importance, puisque c'est juste un identifiant UNIQUE qui sert a le retrouver et a le lier eventuellement a d'autres données.

Voila ;)

PS: j'm bien ton site ;)

Fardeen le 6 août 2007 22:39 |

Boujour,
Super ce tuto !

J'ai gros souci je suis certain de mes identifiants et j'obtiens toujours lors du setup de phpmyedit.

Sorry - login failed - please try again

Quelqu'un ? Une astuce ?

julien le 8 août 2007 8:59 |

Salut ;)

Verifie les param ds config.php . (tu l'as surement fait mais le pb vient de la, c'est sur.)

Good luck

Fardeen le 8 août 2007 15:53 |

Salut salut, merci pour ce tuto fantastique !
Mais j'ai la meme erreur que Sanket.
J'ai une erreur pendant la création de la miniature.
L'image est uploader mais impossible de la voir sur le site.
Je me suis rendu compte que tu a le meme probleme sur tonn site en ce moment.
http://fardeen.biz/wp-content/...../photo.php
Si tu ajoute une photo tu verra le problème.
Si tu peux me donner un coup de main pour debuguer ca ca serai sympa.
Merci !

Niksam le 17 août 2007 17:01 |

Juste une chose encore GD2 est présent et activé sur mon serveur.

Niksam le 17 août 2007 17:06 |

J'Ai rapidement checké sans grand succès. C'est probablement une modif serveur parcque ca marchait y a pas encore si ltps et plus maintenant sans aucune intervention de ma part.

PHPThumb affiche cette magnifique erreur :

"picture.jpg did not appear to fail, but the output image does not exist either..."

Merci pr la precision et les points de suspension ..., ca fait plaisir les erreurs explicites :/

Si j trouve j te tiens au courant, hesite pas a en faire autant si tu trouves le premier )

Fardeen le 17 août 2007 20:10 |

J'ai installé le code en local et tout fonctionne à merveille.

La seul différence entre les 2, est la version de PHP:
- PHP Version 5.1.6-pl11-gentoo (serveur)
- PHP Version 5.2.3 (Local)

Et ca pourrai ce confirmer suite a ton bug qui est "apparu".

Voila peut etre une piste, je vais approndir et si j'ai des nouvelles je te revien dessus !

Niksam le 21 août 2007 15:03 |

Bonjour.
Merci pour les tutos que vous faites.
J' avou ) , je n' ais pas encore tester ce tuto malgrés que ce log m' interesse.
Je voudrais savoir si c' est simplement un log qui fait comme phpmyadmin ou s' il me permettrait de gerer une bdd normalement en me permettant de ne pas rendre visible certaines tables, me permettrais de ne pas donner certaines autorisation suivant certaines personnes, donner des permissions quoi ) ?
Si je pourrais aussi faire une sorte de recherche multicriteres ?

S' il serait possible d' agencer les resultats a sa guise.
Et pourquoi pas utiliser CMSMS avec ;) ?.
Je précise que je debute, même si j' arrive un peut a me debrouiller ;).

Merci d' avance.
@ +++

oranda le 21 août 2007 21:04 |

Salut,

Oui ca te permet de faire des admins personnalisée, sinon il n y aurai pas d'interet a l'utiliser, phpmyadmin faisant tres bien l'affaire ;)
D'ailleurs j'ai decouvert il quelque temps turbodbadmin que je n'ai pas eu l'occasion de vraiment tester mais qui mérite un coup d'oeil :
http://www.turboajax.com/turbodbadmin_demo/

Pour la recherche, c'est egalement possible (tout est possible vu que c'est du PHP) mais ce n'est pas la vocation de phpmyedit. Une rechercher existe pourtant mais elle est basique.

Oui il est possible d'agencer les resultats a sa guise. On peut meme les filtres selons différents critères.

L'objectif de CMSMS est de ne justement pas avoir besoin de ce genre d'outil, mais pourquoi pas , tu peux toujours les lier ensemble meme si ca sert a rien ;)

Voila, en esperant avoir répondu a tes questions ;)

Fardeen le 21 août 2007 22:10 |

Re et merci pour votre réponse rapide.
Donc aprés un test rapide turbodbadmin est un clone de phpmyadmin ) .
Donc si j' apprends a me servir correctement de CMS MS, je pourrais creer un site avec une BDD MySQL et faire un systeme de recherche multicriteres assez facilement ? .
En fait mon but serait donc de pouvoir rentrer des infos dans une BDD en mode admin et permettre une recherche multicriteres en fonction des utilisateur depuis un site.
Je commence a comprendre le SQL et arrive a creer des requetes SQL, mais avant de refaire le monde, je voulais savoir s' il n' existait pas un log qui me permettait de le faire plus facilement que de taper en dur les requetes.

Vous me conseilleriez donc d' utiliser et donc d' apprendre a me servir de CMS MS pour faire ce que je descris ?

Encore merci.

oranda le 22 août 2007 4:47 |

Cela depend de ton besoin precis... ms CMSMS peut effectivement faire l'affaire sans souci, notamment avec ses nombreux plugins et modules.

Fardeen le 22 août 2007 12:58 |

Bonjour.
Allez, je vous embete une derniere fois ;).
Finalement je vais etudier phpmyedit en premier, j' en ai plus besoin en ce moment.
Peut on avec phpmyedit faire une presentation des données ?.
Je m' explique, je voudrais pouvoir afficher les données non pas comme le fait phpmyedit d' origine.
Faire des affichages de pages differentes en fonction des données recherchées ou une page specifique a l' enregistrement et ou modification.

Existe t 'il des log facilitant cette tache , si oui en connaissez vous ?.
Existe t 'il aussi des tuto pour ce genre de chose.
Merci

oranda le 24 août 2007 13:07 |

Fardeen aucune nouvelle de ton coté ?
Moi je bloc sévère :/
Bon, je ne lache pas prise )

Niksam le 24 août 2007 14:23 |

Salut.
Suis tros nul ( .
J' arrive pas a relier deux tables pour faire comme pour le pb Id categorie ou vous expliquez pour ne pas avoir a taper l' iD.

En fait pour faire mon essais, j' ai cree une table "contacts" avec dedans 'cont_id' ,' titre_id' (la cle etrangere' , 'cont_nom' ,' cont_prenom'.
J' ai mis les données 'Mr' et 'Mme' dans la table titre.
Avec phpmyedit, lorsque je veux ajouter un contact, il me faut taper le titre_id.
Alors que je voudrais faire comme vous lier les deux tables.
Pourriez voous m' aider svp.
Merci d' avance.

oranda le 26 août 2007 19:35 |

@oranda : tu peux customiser phpmyedit autant que tu le souhaites. Si tu as des besoins vraiment tres precis, demande toi si ce ne serait pas mieux de le developper avec un framezork PHP plus adaptable comme zend framework ou cakePHP (sachant que qu'ils necessitent une prise en main bien plus longue...)

Pour ta 2eme question, pr un libelle de type mr, mme., cela necessite pas de table. Un type ENUM fera mieux l'affaire.

@tjrs rien niksam, je tavouerais qu'en ce moment j'ai vrmt pas le temps. Desole, ms merci de me tenir au courant. Vive la net solidarité ;)