Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
bonjour,
cela fait trois heures que je suis sur un problème qui me fatigue et je commence à désespérer. Je fais appel à vos lumières, car je ne comprends vraiment rien du problème.
J'explique donc le contexte :
sur la page d'un objet, je charge en ajax une liste de commentaires associés à cet objet. Jusque-là tout se passe bien. Il y a également un formulaire qui permet d'ajouter un commentaire en ajax. Jusque-là, ok.
Dans mon processus de création de commentaire, je fais donc les vérifications de base, puis j'insère le commentaire, et ensuite je récupère les données de l'objet pour effectuer une trace et dire qu'un nouveau commentaire a été posté pour tel objet. L'insertion du commentaire se passe bien. Mais c'est pour récupérer l'objet que j'ai des problèmes.
Je fais un :
$obj = new monobject();
$obj->fetchRow('id = .$id);
et pam, je n'ai rien, j'ai une erreur ajax qui apparaît. Enfin le processus Ajax est interrompu. Et si je fais un alert de r.responseText, ça me renvoie vide. Idem si je le mets en console.log. Ce problème arrive environ 3 fois sur 5. Et j'ai beau débogguer ligne par ligne, je n'arrive jamais à le retrouver au même endroit. Si encore ça ne marchait jamais, j'aurais peut-être plus facilement compris, mais non, ça marche de temp en temps.
Sachez que monobject est bien trouvé et la méthode fetchRow semble exister, car quand je mets, dans la même fonction, :
$obje = new monobjectquinexistepas
je reçois bien une erreur : fatal error, impossible de trouver la classe, etc.
Idem si je remplace fetchRow, par fetchnotrow, j'ai une fatal error.
Si quelqu'un a une idée, je suis preneur, car là ça me soule assez. Merci
Dernière modification par Cidrolin (05-01-2009 17:57:51)
Hors ligne
il te faut faire afficher les erreur php
Car tu a surrement une intéruption de ton script
le plus simple est de la lancer à la main pas en ajax pour le tester
tu peux utiliser fire bug pour faire ça
A+JYT
Hors ligne
Salut,
Si tu as collé ton code tel qu'il est réellement, attention il te manque une simple cote dans:
('id = .$id);
Sinon, même chose que ce qu'a dit sekaijin.
A+ benjamin
Hors ligne
salut,
merci de votre réponse.
Mais je n'ai pas d'erreur PHP, car si jamais je fais exprès de rajouter une variable non définie, ou même qu'il y a une erreur SQL, les erreurs s'affichent bien dans firebug. Mais autrement, je n'ai vraiment rien. Je fais un console.log du résultat qui ne renvoie rien du tout.
Hors ligne
Bon si je mets le cache, le problème ne survient pas, si je le mets, le problème survient une fois de temps en temps. Pourtant, j'ai voulu que le cache ne s'active pas si on a affaire à une requête ajax. J'utilise le plugin trouvé sur developpez.com en faisant
if ($request->isXmlHttpRequest()){
self::$doNotCache = true;
return;
}
Hors ligne
Pages: 1