Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 19-08-2009 11:16:18

Stormfaint
Nouveau membre
Date d'inscription: 20-04-2009
Messages: 9

Erreur éxécution SQL

Bonjour à tous,

Je ne sais pas si mon problème est dû à Zend particulièrement, mais je me lance :

J'ai une requête SQL qui enregistre pas mal de texte via un FCK, avec 2 jointures.

Si j'ai une quantité de texte raisonnable, aucun soucis, tout s'enregistre bien.

Si j'en mets plus, j'ai une erreur Apache, du style Premature End Of Script... qui est dû soit à l'exécution trop longue d'un script, soit d'un problème du script. Ce n'est pas le premier problème, vu que je reçois l'erreur au bout de 1 à 2 secondes d'exécution du script.

Lorsque que j'affiche ma requête avant de l'exécuter : aucun problème.
Lorsque je l'exécute : problème.
Lorsque j'exécute ma requête directement via phpMyAdmin : aucun problème.
Lorsque que j'exécute ma requête en local : aucun problème

Mon script :

Code:

$query = 'update types_prestations as tp
                    inner join prestations as p on tp.id = p.id_type
                    inner join prestations_content as pc on pc.id_content = p.id_content
                    inner join langs on langs.id = pc.id_lang
                    set  pc.content = \''.addslashes($datas[$type.'_'.$lang]).'\', pc.exemple = \''.addslashes($datas[$type.'_exemple_'.$lang]).'\'
                    where tp.type = \''.$type.'\' and langs.value = \''.$lang.'\'';
                    
                    
        $this->db->query($query);

J'utilise PDO_MYSQL, un 240plan j'ai OVH, et ce bout de script est dans une fonction d'une classe qui étend Zend_db_table...

Je suis un peu perdu.  Quel est mon problème? Y'a t-il une façon de gérer cette requête différemment pour que ça passe? ...

Merci par avance smile

Hors ligne

 

#2 19-08-2009 17:50:49

Stormfaint
Nouveau membre
Date d'inscription: 20-04-2009
Messages: 9

Re: Erreur éxécution SQL

En fait j'ai trouvé. Je pensais que la méthode Query suffisait, mais me^me avec une requête complète comme la mienne, elle exerce divers traitements. Je ne connais pas exactement la raison mais ça doit être ça qui me faisait planter.

Du coup au lieu d'utiliser $this->db->query($query); , je force tout ça avec $this->db->getConnection()->exec($query); , et je ne rencontre plus de problèmes.

Je ne sais pas si c'est la meilleur solution, mais c'est la seule méthode propre qui marche, donc je pense m'y tenir.

Merci quand même wink

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages