|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : juillet 2011 Messages : 5 ![]() |
Bonjour,
je poste ici car j'ai un soucis de taille que je ne comprend pas. Ma situation: je suis nouveau dans mon entreprise et je suis en charge de maintenir l'intranet. L'intranet en PHP pioche de temps en temps des données dans une base de données DB2 hébergée sur un AS400. Le driver utilisé est iSeriesAccess-5.4.0-1.6.i386 sur un serveur Debian. Tout marche bien il n'y a pas de soucis. Le problème c'est que je cherche a faire un serveur de test équivalant à mon serveur de production. J'ai donc tout installer et tout semble marcher. Par contre je rencontre un soucis lors de CERTAINES requêtes. Les requêtes basiques marchent très bien mais quand on gonfle un peu la requête cela met une page blanche. Aucun message d'erreur. Je tiens à préciser que la requête marche sur mon serveur de production. Le code est identique. J'ai configurer le driver ODBC de la même façon que sur le serveur de production (je pense). je ne vois donc pas pourquoi certaines requêtes marchent et d'autres pas. Merci d'avance. emilien. |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() Inscription : mai 2002 Messages : 1 638 ![]() |
Bonjour,
oué enfin là vous dites : j'ai un problème, je ne sais pas ce que c'est, je ne peux pas l'expliquer donc demerdez-vous pour me trouver une solution. Et comment qu'on fait nous ? edit: donc choppez les requêtes qui ne marchent pas et essayé de trouver des logs quelque part, quittes à mettre en mode debug votre applicatif pour essayer de remonter à la source. Par exemple sur les passage que vous suspecté, loggez l'heure de début d'execution, la fin (s'il y en a une) les éventuels code SQL retour, etc. |
|
|
00
|
|
|
#3 | ||
|
Invité de passage
![]() Inscription : juillet 2011 Messages : 5 ![]() |
Bonjour,
en fait j'ai essayé de debugger mon code en écrivant dans un fichier les étapes clés. Il s'avère que le code bloque sur un while mon code est le suivant : Code :
J'ai mis des log avant, dedans et après le while et je m’aperçois que le code s'arrête avant d'entrer dans le while. J'espère que je vous ai apporté plus d'éléments. Merci d'avance. |
||
|
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() Inscription : mai 2002 Messages : 1 638 ![]() |
Mais votre result set est vide ?
La requête s'execute bien (dans votre code) ? |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : juillet 2011 Messages : 5 ![]() |
Le résultset donne : Resource id #90
Or apparemment s'il y a une erreur à l’exécution je devrai avoir false et doit renvoyer une ressource si elle marche. De plus j'ai tester la même requête en dur sur mon interface de l'AS400 et cela me retourne bien une ligne. La même requête marche aussi sur mon autre serveur web. |
|
|
00
|
|
|
#6 |
|
Expert Confirmé
![]() Inscription : mai 2002 Messages : 1 638 ![]() |
Je ne comprend pas ce que veux dire : Resource id #90
Ce que je cherche à comprendre c'est de savoir si votre requete s'execute bien => oui / non ? Si oui, le problème n'a strictement rien à voir avec l'as400 ni avec votre driver odbc/jdbc. |
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : juillet 2011 Messages : 5 ![]() |
Oui la requête s'exécute bien.
Le problème se situe au niveau du traitement du resultset je pense. |
|
|
00
|
|
|
#8 |
|
Membre chevronné
![]() Administrateur de base de données Inscription : octobre 2006 Messages : 503 ![]() |
je pense que ce n'est pas un probleme db2.
++ |
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Inscription : juillet 2011 Messages : 5 ![]() |
Bonjour,
je reviens vers vous pour vous dire que j'ai trouvé la solution. Elle ne venait pas de db2 mais de php qui interprétait mal le resultset. J'ai donc du me débrouiller autrement. Je clôture, merci à ceux qui ont pris de leur temps pour m'aider. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com