| Auteur |
Sujet |
Gilles
Grand Maître
enregistré depuis : jui. 2005
Messages : 2191
dernière visite: 04.07.08
|
Bonjour,
je suis en train de créer un module pour la version 0.8 et je peine sur l'ajout d'informations dans la base de donnée:
- $obj = array( 'id' => '',
- 'uid' => '2',
- 'msg' => 'toto',
- 'date' => '2000-01-01');
-
- $result = DBUtil::insertObject($obj, 'test');
voici le code que j'utilise pour insérer des valeurs
id est une clé primaire (int) , uid est un int contenant un n° d'utilisateur, msg est un message, et date contient une date :)
Celà peut-il venir que ce code est situé dans pnajax.php ??
Gilles ><>°
|
| 17.06.2006, 14:02 |
|
 |
Chestnut
Grand Maître
enregistré depuis : mar. 2005
Messages : 1125
dernière visite: 13.06.08
|
Un peu tôt pour faire un module 0.8 uniquement (uniquement car inutilisable sans le pnobjlib)...
Mais bon... petit manque d'information... quelle est l'erreur, le message, l'appel api (user ou ajax)... etc.
A suivre...
Chestnut !
Administrateur
Aucun Support par message privé...
Même en cas de pensée suicidaire !
Règles à suivre
|
| 17.06.2006, 14:40 |
|
 |
Chestnut
Grand Maître
enregistré depuis : mar. 2005
Messages : 1125
dernière visite: 13.06.08
|
Voir aussi le module ExampleDB dans le SVN ValueAddons pour les exemples.
Chestnut !
Administrateur
Aucun Support par message privé...
Même en cas de pensée suicidaire !
Règles à suivre
|
| 17.06.2006, 14:40 |
|
 |
Gilles
Grand Maître
enregistré depuis : jui. 2005
Messages : 2191
dernière visite: 04.07.08
|
ok, je vais regarder...
je pense toutefois que je devrais y arriver car les autres modules de la 0.8 fonctionnent
l'erreur provient de json, mais la boite d'erreur est tellement grande qu'elle déborde de ma fenêtre... je vais regarder ExampleDB !
Gilles ><>°
|
| 17.06.2006, 14:46 |
|
 |
Chestnut
Grand Maître
enregistré depuis : mar. 2005
Messages : 1125
dernière visite: 13.06.08
|
Gilles a écrit :
je pense toutefois que je devrais y arriver car les autres modules de la 0.8 fonctionnent
Bien évidemment... puisqu'ils ont été fait pour la 0.8. Mais tout module utilisant le pnobjlib, le pnajax et autres ne fonctionnera pas sur les version antérieures... Et comme on en a encore pour quelques mois avant une sortie RC de la 0.8.......
Gilles a écrit :
l'erreur provient de json, mais la boite d'erreur est tellement grande qu'elle déborde de ma fenêtre... je vais regarder ExampleDB !
Possible texte renvoyé au pnajax contenant une erreur de parsing (apostrophe, quillemets, etc).
Good luck !
Chestnut !
Administrateur
Aucun Support par message privé...
Même en cas de pensée suicidaire !
Règles à suivre
|
| 17.06.2006, 14:52 |
|
 |
Chestnut
Grand Maître
enregistré depuis : mar. 2005
Messages : 1125
dernière visite: 13.06.08
|
A noter par contre....... garde tout renseignement sous la main. Si tu distribue ton module à titre d'exemple, ça pourrait être utile.
Chestnut !
Administrateur
Aucun Support par message privé...
Même en cas de pensée suicidaire !
Règles à suivre
|
| 17.06.2006, 14:53 |
|
 |
Gilles
Grand Maître
enregistré depuis : jui. 2005
Messages : 2191
dernière visite: 04.07.08
|
Chestnut a écrit : A noter par contre....... garde tout renseignement sous la main. Si tu distribue ton module à titre d'exemple, ça pourrait être utile.
je comprend pas ce que je doit garder...
Citation : Bien évidemment... puisqu'ils ont été fait pour la 0.8. Mais tout module utilisant le pnobjlib, le pnajax et autres ne fonctionnera pas sur les version antérieures... Et comme on en a encore pour quelques mois avant une sortie RC de la 0.8.......
je sais... mais je fais un module "spécial ajax", et il me faudra bien les quelques mois pour le finaliser... je dit spécial ajax, car je tente de faire un module de chat sans devoir utiliser du flash ou autre systèmes propriétaires...
Gilles ><>°
|
| 17.06.2006, 15:02 |
|
 |
Gilles
Grand Maître
enregistré depuis : jui. 2005
Messages : 2191
dernière visite: 04.07.08
|
Voilà le code que j'ai pu trouver dans le module de permissions:
- $obj = array('realm' => (int)$realm,
- 'gid' => (int)$id,
- 'sequence' => (int)$newseq,
- 'component' => $component,
- 'instance' => $instance,
- 'level' => (int)$level);
-
- if (!DBUtil::insertObject($obj, 'group_perms', false, 'pid')) {
- pnSessionSetVar('errormsg', "Error adding group permission");
- return false;
- }
A partir de celà, j'ai écrit mon code:
- function pchat_ajax_addmessage() //ajout d'un message
- {
- $message['message'] = "message";
- $message['uname'] = "gilles";
- $message['time'] = "01234567";
-
- $message['erreur'] = "aucune";
-
- $obj = array('uid' => (int)0,
- 'msg' => $message['message'],
- 'timestamp' => (int)$message['time']);
-
- if (!DBUtil::insertObject($obj, 'pchat',false,'id')) {
- pnSessionSetVar('errormsg', "Error");
- }
-
- return $message;
- }
ma base de données est constituée de la manière suivante:
pchat:
id (int) <<- cle primaire
uid (int)
msg (varchar)
timestamp (int)
Quelqu'a-t-il une idée de la manière de faire marcher ce code?
Gilles ><>°
|
| 24.06.2006, 10:07 |
|
 |
Gilles
Grand Maître
enregistré depuis : jui. 2005
Messages : 2191
dernière visite: 04.07.08
|
Dois-je utiliser DBUtil::createTable pour créer la table et ensuite l'utiliser ??
Gilles ><>°
|
| 24.06.2006, 10:28 |
|
 |
Gilles
Grand Maître
enregistré depuis : jui. 2005
Messages : 2191
dernière visite: 04.07.08
|
|
| 24.06.2006, 11:03 |
|
 |
Chestnut
Grand Maître
enregistré depuis : mar. 2005
Messages : 1125
dernière visite: 13.06.08
|
Impossible à voir... pas assez d'info...
Ta table, elle existe ou non... le pntable est là ? La table s'appelle bien pchat ? les champs ont le nom et l'alias que tu donnes ?
Car pour l'instant, la seule chose qu'on peut voir est que insertObject ne voit ni les valeurs, ni les champs de table.
Chestnut !
Administrateur
Aucun Support par message privé...
Même en cas de pensée suicidaire !
Règles à suivre
|
| 24.06.2006, 17:18 |
|
 |
Gilles
Grand Maître
enregistré depuis : jui. 2005
Messages : 2191
dernière visite: 04.07.08
|
Citation : Ta table, elle existe ou non... le pntable est là ? La table s'appelle bien pchat ? les champs ont le nom et l'alias que tu donnes ?
La table existe, je l'ai crée manuellement.
que veux-tu dire par pntable ???
La table s'appelle bien pchat.
Les champs on bien les mêmes noms et le même alias.
je vais essayer de trouver une autre résolution d'ecran pour faire un meilleur screenshoot !
Gilles ><>°
|
| 24.06.2006, 21:22 |
|
 |
Chestnut
Grand Maître
enregistré depuis : mar. 2005
Messages : 1125
dernière visite: 13.06.08
|
Sans le fichier pntables.php (voir création d'un module - ExampleDB par exemple), insertObject ne connaît pas la définition de la table...
b-a-ba de la création d'un module.
Chestnut !
Administrateur
Aucun Support par message privé...
Même en cas de pensée suicidaire !
Règles à suivre
|
| 24.06.2006, 22:26 |
|
 |
Gilles
Grand Maître
enregistré depuis : jui. 2005
Messages : 2191
dernière visite: 04.07.08
|
Chestnut a écrit : Sans le fichier pntables.php (voir création d'un module - ExampleDB par exemple), insertObject ne connaît pas la définition de la table...
b-a-ba de la création d'un module.
Oups...
merci !!!
ca devrais aller mieux maintenant, si j'ai pas fait d'autres bourdes !
Gilles ><>°
|
| 24.06.2006, 22:35 |
|
 |
Gilles
Grand Maître
enregistré depuis : jui. 2005
Messages : 2191
dernière visite: 04.07.08
|
OK !
Merci une fois de plus pour ton aide Chestnut !!
Gilles ><>°
|
| 24.06.2006, 22:40 |
|
 |