Donne le chemin relatif de ton ./ckeditor/ckeditor.js
Par rapport à ./index.php ou ./picture.php
Merci,
j'ai réussi à me connecter à la base de donnée :p.
C'est vrai que je ne suis pas du tout familier avec les templates et la doc de smarty m'a un peu aidé à éclaircir tout ça.
Maintenant j'ai un autre problème ...
Je veux intégrer cKeditor dans mon plugin. Hors le javascript n'ai pas pris en compte ...
Voici mon tpl :
{html_head}<script type="text/javascript" src="../ckeditor/ckeditor.js"></script>{/html_head} <div class="titrePage"> <h2>Editeur</h2> <form method="post" action="{$F_ACTION}"> <select name="division"> <option value="1">Choisir le fichier</option> <option value="0">------------------</option> <option value="bio">Qui suis-je ?</option> <option value="liens">Liens</option> <option value="tarifs">Tarifs</option> </select> <input type="submit" value="editer" /> <textarea class="ckeditor" id="editor1" name="texte"> <p>This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">CKEditor</a>.</p> </textarea> <br /> <p><input type="submit" value="Enregistrer" name="submit" /></p> </form>
Le chemin du script est correct car lorsque je renomme le .tpl en .html, là le javascript est interprété ???
Où je me suis encore trompé s'il vous plait ?
Par exemple, supposons que dans notepad++ j'ai besoin de coder un mysql_query et je ne sais pas comment faire dans Piwigo.
Je fais un search dans le répertoire include de Piwgo de mysql_query, je ne vais pas en trouver beaucoup, mais je verrais sans aucun doute la fonction qui l'utilise (et les commentaires qui sont en tête).
En 15 secondes, j'ai trouvé pwg_query...
Plus encore il faut savoir que Piwigo s'appuit sur Smarty (smarty.net).
Et de fait :
?> <p> <?php echo $donnees['bio']; ?> </p> <?php
On évitera. Multi-view permet d'avoir une vue (debug) des données du template.
Sinon sur le fond, tu a raison et cela viendra (Laurent Duretz a mis un outil sur son site mais je ne sais pas sur quelle version du code il s'appuit et les fonctions evoluent très vite surtout actuellement, tu pourrais trouver une fonction qui ne serait pas encore disponible par exemple).
Merci de vos réponses.
Je ne connaissais pas pwg_query($sql).
Y a-t-il un endroit qui regroupe les fonctions de Piwigo ?
J'ai lu "Aide à la création de plugin", "Faire son plugin personnel" et "Les templates", mais tout cela reste encore assez flou ...
3 membres de l'équipe qui te demandent de ne pas chercher dans cette direction.
Il faut vraiment bien comprendre la logique des plugins, presque tous les plugins font des mises à jour dans la base, mais aucun ne cherche à effectuer une connexion.
La connexion est automatiquement assurée avant le plugin.
if (isset($_POST['bouton'])) { $reponse = mysql_query("SELECT * FROM pluginEditeur"); while ($donnees = mysql_fetch_array($reponse) ) { ?> <p> <?php echo $donnees['bio']; ?> </p> <?php }
Ceci est très loin de la logique standard des plugins de Piwigo.
grum a écrit:
Pourquoi tenter toi-même d'effectuer la connexion à la base de donnée ?
Piwigo le fait déjà. Pour toutes les requêtes, utilise la fonction pwg_query($sql)
Sinon ton plugin ne marchera pas longtemps !!
Pourquoi tenter toi-même d'effectuer la connexion à la base de donnée ?
Piwigo le fait déjà. Pour toutes les requêtes, utilise la fonction pwg_query($sql)
Mon conseil : Prendre exemple d'un plugin existant pour débuter avec Piwigo...
Bonjour,
dans mon plugin j'essaie de me connecter à la base de donnée, mais j'obtiens un message d'erreur...
Pourtant ce que je récupère s'affiche sur la page.
<?php include_once(PHPWG_ROOT_PATH.'include/mysql.inc.php'); if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!'); $me = get_plugin_data($plugin_id); mysql_connect($cfgHote, $cfgUser, $cfgPassword); mysql_select_db($cfgBase); if (isset($_POST['submit'])) { $me->my_config['Bio'] = $_POST['BIO']; $me->my_config['Liens'] = $_POST['LIENS']; $me->my_config['Tarifs'] = $_POST['TARIFS']; $me->save_config(); } if (isset($_POST['bouton'])) { $reponse = mysql_query("SELECT * FROM pluginEditeur"); while ($donnees = mysql_fetch_array($reponse) ) { ?> <p> <?php echo $donnees['bio']; ?> </p> <?php } mysql_close(); } global $template; $template->set_filenames( array('plugin_admin_content' => dirname(__FILE__).'/editeurplugin_admin.tpl') ); $template->assign('BIO', $me->my_config['Bio']); $template->assign('LIENS', $me->my_config['Liens']); $template->assign('TARIFS', $me->my_config['Tarifs']); $template->assign_var_from_handle( 'ADMIN_CONTENT', 'plugin_admin_content'); ?>
Et voilà ce que j'obtiens une fois que je clique sur le bouton :
Warning: Cannot modify header information - headers already sent by (output started at /home/plantepa/public_html/piwigo/plugins/editeur/admin/editeurplugin_admin.php:37) in /home/plantepa/public_html/piwigo/include/page_header.php on line 98 Warning: mysql_query() [function.mysql-query]: Access denied for user 'plantepa'@'localhost' (using password: NO) in /home/plantepa/public_html/piwigo/include/functions.inc.php on line 602 Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home/plantepa/public_html/piwigo/include/functions.inc.php on line 602 Warning: [mysql error 1045] Access denied for user 'plantepa'@'localhost' (using password: NO) SELECT mail_address FROM piwigo_users WHERE id = 1 ; in /home/plantepa/public_html/piwigo/include/functions.inc.php on line 918 Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/plantepa/public_html/piwigo/include/functions.inc.php on line 1122 Propulsé par Piwigo Warning: mysql_query() [function.mysql-query]: Access denied for user 'plantepa'@'localhost' (using password: NO) in /home/plantepa/public_html/piwigo/include/functions.inc.php on line 602 Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home/plantepa/public_html/piwigo/include/functions.inc.php on line 602 Warning: [mysql error 1045] Access denied for user 'plantepa'@'localhost' (using password: NO) REPLACE INTO piwigo_sessions (id,data,expiration) VALUES('5D02ec272839ac8a091c8591fcb70431b47d','is_handheld|b:0;pwg_uid|i:1;',now()) ; in /home/plantepa/public_html/piwigo/include/functions.inc.php on line 918