Archives FluxBB.fr

Les archives de FluxBB.fr

Vous n'êtes pas identifié(e).

#26 01-06-2007 13:48:56

vin100
Membre

Re : PunBB Simple API (PunSAPI) 0.3

est-ce que tu as regardé les exemples ? une fonction user_login serait parfaitement inutile, regarde les exemples

sinon si tu avait trouvé des bugs tu peut quand même les signaler car c'est pas dit qu'ils soient corrigés

Hors ligne

#27 12-06-2007 17:02:29

motsan
Membre

Re : PunBB Simple API (PunSAPI) 0.3

Bonjour,

Bug en vu... sur la v0.3
dans la fonction edit_post du fichier public.php, il faut remplacer la variable $id par $post_id sinon ca ne genere que des erreurs de RQT SQL, car a chaque RQT il y a un truc du genre "where id='.$id.'...' et ca plante.

Dernière modification par motsan (12-06-2007 17:03:01)

Hors ligne

#28 13-06-2007 21:28:16

Jérémie
Membre

Re : PunBB Simple API (PunSAPI) 0.3

Question sûrement stupide : pourquoi punsapi utilise des require et pas des require_once ?

J'ai un problème de fonction punsapi déclarée deux fois, qui semble liée au fait que des fichiers .php sont inclus de multiples fois par punsapi...

Ou alors j'ai raté quelque chose...

Autre truc : dans core.php lignes 230 et 231, c'est normal le double require identique ?

Dernière modification par Jérémie (13-06-2007 21:36:04)

Hors ligne

#29 13-06-2007 22:14:41

dahousemix
Membre

Re : PunBB Simple API (PunSAPI) 0.3

Il n'y a pas de double require aux lignes 230 et 231 de core.php

            if (file_exists(dirname(__FILE__).'/locales/'.$this->user['language'].'/date.lang.php'))
                require dirname(__FILE__).'/locales/'.$this->user['language'].'/date.lang.php';

Hors ligne

#30 13-06-2007 22:38:17

Jérémie
Membre

Re : PunBB Simple API (PunSAPI) 0.3

Il a du se passer un truc bizarre de mon coté...

Corrigé, merci.

Une idée pour les require/require_once ?

Hors ligne

#31 14-06-2007 07:46:42

vin100
Membre

Re : PunBB Simple API (PunSAPI) 0.3

@motsan : merci, j'y regarderais dès que possible

@Jérémie : pas de require_once parce que je n'en ai pas vu l'utilité, chaque fichier n'est inclut qu'une seule fois, enfin en théorie, après y'a peut être un bug, mais où ? je ne sais pas, jamais rencontré de tel bug

enfin à vue de nez une fonctione PunSAPI déclarée deux fois c'est certainement que tu inclu deux fois le script non ?

Hors ligne

#32 14-06-2007 17:07:25

Jérémie
Membre

Re : PunBB Simple API (PunSAPI) 0.3

Fichier inclus une seule fois, mais objet instancié deux fois.

Hors ligne

#33 14-06-2007 18:56:46

vin100
Membre

Re : PunBB Simple API (PunSAPI) 0.3

en théorie créer deux instances de la même classe ça ne pose aucun problème, c'est un des but de l'objet, après reste à voir si cela est bien nécessaire

mais je ne comprend pas trop, est-ce que c'est toi qui créer deux instances de PunSAPI dans le même script et qui pose problème ou est-ce que c'est PunSAPI qui créer deux instances d'une classe alors qu'il ne faudrait pas

peut tu préciser ton problème stp ?

Hors ligne

#34 14-06-2007 20:06:20

Jérémie
Membre

Re : PunBB Simple API (PunSAPI) 0.3

Voilà le truc. J'essaie d'écrire un plugin pour Textpattern (petit CMS assez dans l'esprit de PunBB, les deux cohabitent plutôt très bien) qui soit une mini interface vers PunSAPI (et donc PunBB).

Le plugin est un simple code php, ou chaque commande qui sera utilisé par le CMS est une fonction.

Donc pour avoir disons deux commandes, A et B, j'ai dans mon plugin:

require_once '/punsapi/public.php';
function a() {
   $foo = new punsapi();
   // du traitement
   return unTruc;
}
function b() {
   $foo = new punsapi();
   // du traitement
   return unAutreTruc;
}

Si ensuite j'appelle ma commande A, ça va. Mais quand j'appelle aussi la B, j'obtiens un "cannot redeclare function" (stripslashes_array() dans mon cas, mais je suppose que c'est juste parce qu'elle est appelée deux fois).

J'ai bien sûr testé de créer un objet en-dehors des fonctions, donc un seul pour le code, mais j'obtiens alors une erreur PHP "objet inconnu".

Note : oui le développement, c'est pas ma tasse de thé hmm

J'ai essayé le mode debug de punsapi pour voir si il me donnait plus d'infos sur le cheminement exact du parser, mais rien de plus non.

Dernière modification par Jérémie (14-06-2007 20:07:34)

Hors ligne

#35 14-06-2007 21:10:40

BertrandB
Membre

Re : PunBB Simple API (PunSAPI) 0.3

Jérémie a écrit :

J'ai bien sûr testé de créer un objet en-dehors des fonctions, donc un seul pour le code, mais j'obtiens alors une erreur PHP "objet inconnu".

Note : oui le développement, c'est pas ma tasse de thé :

Je suppose que dans les fonction tu as déclaré "global" l'objet créé en dehors ?

Pour avoir un fonctionnement "à la C" j'ai pondu cet horrible truc :

define("GlobalVar",'foreach($GLOBALS as $key => $value) {eval("global $$key;");}');
function Alac(){
  eval(GlobalVar);
  ....

A ne pas utiliser !!! ^^

Hors ligne

#36 14-06-2007 22:49:55

Jérémie
Membre

Re : PunBB Simple API (PunSAPI) 0.3

BertrandB a écrit :

Je suppose que dans les fonction tu as déclaré "global" l'objet créé en dehors ?

Nope... je viens d'essayer, mais je n'arrive à rien sur ce flanc là.

Hors ligne

#37 15-06-2007 13:02:00

vin100
Membre

Re : PunBB Simple API (PunSAPI) 0.3

normalement :

require_once '/punsapi/public.php';
$foo = new punsapi();
function a() {
   global $foo;
   // du traitement
   return unTruc;
}
function b() {
  global $foo;
   // du traitement
   return unAutreTruc;
}

ou en paramètres de tes fonctions :

require_once '/punsapi/public.php';
$foo = new punsapi();
function a(&$foo) {
   // du traitement
   return unTruc;
}
function b(&$foo) {
   // du traitement
   return unAutreTruc;
}

par contre je ne comprend pas pourquoi il y a cette erreur de re-déclaration de fonction quand tu créer 2 instances, je regarderais

Jérémie a écrit :

Note : oui le développement, c'est pas ma tasse de thé hmm

ah je comprend mieux pourquoi tu n'a jamais compris pourquoi il ne fallait pas mettre PunBB 1.2.x en utf-8 roll tongue

Hors ligne

#38 17-06-2007 16:23:19

mine2rien
Membre

Re : PunBB Simple API (PunSAPI) 0.3

bonjour, j'ai tatonné cette API et testé l'affichage d'un des forums pour les news en page d'accueil.Le soucis que je rencontre est apres modification du parser.php pour inclure la puntoolbar....

Warning: main(/mon_domaine/include/cache_smilies.php) [function.main]: failed to open stream: No such file or directory in /mon_domaine/forums/include/parser.php on line 34

Fatal error: main() [function.require]: Failed opening required '/mon_domaine/include/cache_smilies.php' (include_path='.:/usr/local/lib/php') in /mondomaine/forums/include/parser.php on line 34

En effet, punbb est dans un rep "forums" et j'appelle depuis la racine du site.
J'ai vu que dans l'exemple du portal livré avec PUNSAPI:

# the portal path
define('PORTAL_PATH', dirname(__FILE__).'/');

# the forum path
define('PUN_ROOT', dirname(__FILE__).'/');

Je ne maitrise pas encore tout a fait la hierarchie de punbb... si kkun à un tuyau:
visible sur Mon site

Merci d'avance

PS: A noter que news.php à la racine fonctionne tout à fait...:siffle:

Dernière modification par mine2rien (17-06-2007 16:27:40)

Hors ligne

#39 17-06-2007 21:19:26

mine2rien
Membre

Re : PunBB Simple API (PunSAPI) 0.3

après essais, il s'avère que c'est:

[c]<?php echo $pun->parse_message($news->f('message'), $news->f('hide_smilies')) ?>[/c] qui me fait afficher l'erreur.

et je me rends compte que j'ai installé le mod puntoolbar 1.5 et que dans le CHANGELOG de l'aPI il est supporté la version 1.3/1.4 de puntoolbar....:D.
Au temps pour moi...

Dernière modification par mine2rien (17-06-2007 21:30:32)

Hors ligne

#40 19-06-2007 14:38:17

vin100
Membre

Re : PunBB Simple API (PunSAPI) 0.3

Geoffroy, mon collègue a écrit :

elle est énorme ton API

autosatisfaction time ^^

Hors ligne

#41 23-06-2007 10:58:51

mine2rien
Membre

Re : PunBB Simple API (PunSAPI) 0.3

Est il possible par le biais de l'API de verifier la concordance username/password dans l'URL?
www.monsite.com/testapi.php?username=moi&pass=huhu

juste pour faire des vérifications --> nul besoin d'être effectivement loggé apr ce système, juste tester si le pass et le login sont correct.

MErci d'avance

Hors ligne

#42 24-06-2007 20:53:09

vin100
Membre

Re : PunBB Simple API (PunSAPI) 0.3

il me semble pas qu'il y ai de fonction "juste pour tester si le pass et le login sont corrects" mais ça ne doit pas être très compliqué à mettre en place, il faudrait regarder le code de la fonction login et s'inspirer de celle-ci, je peut aussi le noter pour une prochaine version

néanmoins passer un mot de passe dans une URl c'est une très mauvaise idée

Hors ligne

#43 25-06-2007 06:37:19

mine2rien
Membre

Re : PunBB Simple API (PunSAPI) 0.3

login/pass est un exemple mais ce qui m'intéresse surtout est de passer une variable dans l'url afin de pouvoir manipuler cette api avec un logiciel "third party".
J'explique:
via un logiciel, je cherche a savoir si l'utilisateur est membre du forum(login/pass) en me connectant a la BD via un script utilisant l'API. s'il ne l'est pas,il peut alors s'enregistrer...d'où passage de variable dans l'url.
Je pourrai me contenter de renvoyer vers la page d'accueil en effet....mais suis assez bidouilleur et j'aime comprendre tout ce qui se passe autour.

Ps: l'url est utilisé dans mon cas via un socket et non dans un explorateur.Donc url non visible (bon apres...nul n'est a l'abri mais bon...:siffle: ).

Hors ligne

#44 28-06-2007 15:01:08

motsan
Membre

Re : PunBB Simple API (PunSAPI) 0.3

J'ai relu le post global :
pour la personne qui aurait une double instance de je ne sais quoi,
Dans un de mes posts dans le meme topic,
j'explique que pusapi et common.php sont pas utilisables comme ensemble.
en effet, les deux sources declare le strip_slash_trucmuche, ce qui semble etre le probleme.

d'ou ma proposition :

motsan a écrit :

Bonjour,

Je me suis penché sur le code, voila ma proposition : afin que cela fonctionne avec une page de portal ou le plugin 'custom page', j'ai apporté quelques modif :

fichier core.php
1 - constat : le code qui charge la config genere des notices' (mais pas grave).
2 - constat : idem pour le code qui charge le cache.
3 - modification : ligne 158 à 163 (les defines) : j'ai mis un if define histoire de ne pas les redefinir (virer les notices).
4 - modification : ligne 145 : j'ai ajouté une condition d'existance de la fonction stripslashes_array, comme ca elle n'est pas redefinit si deja dans le common.php.

fichier public.php.
1 - function finish : j'ai mis un parametre avec valeur par defaut et un if si besoin de faire un exit.

voila, modeste contrib qui ne devrait pas modifier le comportement de punsapi dans ou en dehors de portal.

pour moi ca marche...

Punsapi : excelent.... smile

ca devrait resoudre le pb.

Dernière modification par motsan (28-06-2007 15:01:50)

Hors ligne

#45 10-07-2007 21:02:21

moustik510
Membre

Re : PunBB Simple API (PunSAPI) 0.3

vin100 a écrit :

est-ce que tu as regardé les exemples ? une fonction user_login serait parfaitement inutile, regarde les exemples

sinon si tu avait trouvé des bugs tu peut quand même les signaler car c'est pas dit qu'ils soient corrigés

Désolé pour le temps de réponse, j'ai oublié de m'abonner au forum.
Donc oui je n'avais pas vu l'ajout de la fonction add_user qui semble faire ce dont j'ai besoin.

Il faut que je retrouve les erreurs que j'avais constaté mais je crois qu'elles ont été constatées sur le forum.
C'était des $variable au lieu de $this->variable par exemple.

J'ai aussi du ajouter
[c]if(!function_exists("stripslashes_array")){[/c]
A la ligne 70 de forum/include/common.php car l'affichage de la partie forum de mon site nécessitait PunSAPI et donc la fonction stripslashes_array était déclarée 2 fois.

Voilà je test la 0.3 ce soir !

Hors ligne

#46 12-07-2007 12:56:42

vin100
Membre

Re : PunBB Simple API (PunSAPI) 0.3

ah oui mais alors là on est dans le cas où tu te sert de PunSAPI dans PunBB ets il a été clairement indiqué que ce n'est pas fait pour ça.

Hors ligne

#47 12-07-2007 13:16:40

moustik510
Membre

Re : PunBB Simple API (PunSAPI) 0.3

vin100 a écrit :

ah oui mais alors là on est dans le cas où tu te sert de PunSAPI dans PunBB ets il a été clairement indiqué que ce n'est pas fait pour ça.

Je n'utilise pas punsapi pour le forum, que je n'ai pas modifié...

... ou très peu car j'ai un template pour mon site, que je souhaitais utiliser pour le forum (voir http://www.moustik510.net/forum/index.php)
Pour l'affichage de ce template, j'utilise punsapi (pour savoir si l'utilisateur est un admin ou autre) donc je me retrouve avec le problème vu plus haut.

Mais un simple
if(!function_exists("stripslashes_array")){
dans /include/punsapi/core.php (de mémoire ...) règle le problème.

Hors ligne

#48 30-07-2007 21:17:07

dahousemix
Membre

Re : PunBB Simple API (PunSAPI) 0.3

Dans core.php remplacer ligne 1083

function handle_img_tag($url, $is_signature=false, $align='')

par

function _handle_img_tag($url, $is_signature=false, $align='')

Hors ligne

#49 06-09-2007 12:58:16

fxc
Membre

Re : PunBB Simple API (PunSAPI) 0.3

bonjour,

j'ai un petit souci avec cette api avec la fonction get_news() , voici mon code simplifié :
    $pun = new punsapi();
    $news = $pun->get_news();
    while ($news->fetch())
        {
            echo $pun->parse_message($news->f('message'),true);
        }


dés qu'il y a une balise [url]ca me retourne l'erreur :
Fatal error: Call to undefined function handle_url_tag() in C:\dvpt\www\v3\forum\include\punsapi\core.php(1171) : regexp code on line 1

et effectivement (comme pour _handle_img_tag du post précedent  ) la fonction s'appelle _handle_url_tag ( manque le underscore au début ), donc  je modifie la regexp (ligne 1153 et 1154 ) en lui donnant le bon nom et là surprise :

Fatal error: Call to undefined function _handle_url_tag() in C:\dvpt\www\AppleStore\v3\forum\include\punsapi\core.php(1173) : regexp code on line 1

_handle_tag_url() n'est toujours pas trouvée sad

quelqu'un a une idée ?

Hors ligne

#50 06-09-2007 14:46:15

Cyrille53
Membre

Re : PunBB Simple API (PunSAPI) 0.3

Bonjour,
J'utilise L'API sur mon site, cela marche très bien, mais je n'arrive pas à récupérer le nom de l'utilisateur dans une variable.
J'explique :
Je veux mettre sur mon site un module de 'news', c'est en fait un module qui permet d'afficher un texte sur la page d'accueil du site.
Je voudrais que ce module ne soit accessible qu'a certain membre. Pour le moment ça va smile.
Mon problème est dans l'administration des news, je voudrais que les membres ne puise gérer que les news qu'ils ont écrites.
Voici mon code de la page liste des news :

<?php
if ($pun->is_admin()) //si le membre est un admin on récupère toutes les news
{
 $retour = mysql_query('SELECT * FROM news ORDER BY id DESC');
}
else // sinon on ne récupère que celles qu'il a écrit
{
  $retour = mysql_query('SELECT * FROM news WHERE auteur = 'le nom du membre' ORDER BY id DESC');
}

while ($donnees = mysql_fetch_array($retour)) // On fait une boucle pour lister les news
{
?>

<tr>
<td><?php echo '<a href="rediger_news.php?modifier_news=' . $donnees['id'] . '">'; ?>Modifier</a></td>
<td><?php echo '<a href="liste_news.php?supprimer_news=' . $donnees['id'] . '">'; ?>Supprimer</a></td>
<td><?php echo stripslashes($donnees['titre']); ?></td>
<td><?php echo $donnees['auteur']; ?></td>
<td><?php echo date('d/m/Y', $donnees['timestamp']); ?></td>
</tr>

<?php
} // Fin de la boucle qui liste les news
?>

Voila, en fait je voudrais qu'après WHERE auteur= on est le nom du membre, et je n'y arrive pas. Si quelqu'un à la solution, j'en serai reconnaissant.
( Je suis pas très bon en php et j'y ai passé une après-midi pour résoudre ce problème sans succès sad )

Dernière modification par Cyrille53 (06-09-2007 14:47:48)

Hors ligne

Pied de page des forums