Bonsoir à tous

Voici mon problème :

Au clic sur un lien je lance une requête AJAX (via jQuery load) pour recharger un élément DOM (jusqu'à là tout va bien).

L'action symfony appelé doit mettre à jour l'enregistrement de la table relié au module, insérer un enregistrement dans une autre table et enfin récupérer les informations nécessaires pour l'affichage dans la vue associé.

Voici la fonction de mon fichier action :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
 
public function executeEncherir(sfWebRequest $request)
  {
	  //CONTROLE CONNEXION
	if($this->getUser()->isAuthenticated()){
		//RECUP INFO CLIENT
		$this->client = Doctrine::getTable('Client')->find(array($this->getUser()->getAttribute('id')));
		//CONTROLE CREDIT
		if($this->client->getCredit()>0){
			//RECUP INFO ENCHERE
			$this->enchere_clic = Doctrine_Query::create()
			  ->from('EnchereClic c')
			  ->leftJoin('c.EnchereCout o')
			  ->leftJoin('c.EnchereDuree p')
			  ->where('c.id = ?',$request->getParameter('id'))
			  ->execute();
			//CREATION HISTORIQUE
			$this->enchereClicHisto=new enchereClicHisto();
			$this->enchereClicHisto->setClientId($this->getUser()->getAttribute('id'));
			$this->enchereClicHisto->setEnchereClicId($request->getParameter('id'));
			$this->enchereClicHisto->setNbCredit($this->enchere_clic->EnchereCout->getCout());
			$this->enchereClicHisto->save();
			//MAJ DT FIN ENCHERE
			$dtFin=$this->enchere_clic->getDtFin();
			$dtFin=str_replace('-',':',$dtFin);
			$dtFin=strtotime($dtFin);
			$dtFin = date("Y-m-d h:i:s",$dtFin+$this->enchere_clic->EnchereDuree->getDuree());
			$this->enchere_clic->setDtFin($dtFin);
			$this->enchere_clic->save();
			//RECUP PRIX
			$this->enchere_clic2 = Doctrine_Query::create()
			  ->select('COUNT(c.id) as prix')
			  ->from('EnchereClicHisto c')
			  ->where('c.enchere_clic_id = ?',$request->getParameter('id'))
			  ->execute();
		}else{
		//TODO l'UTILISATEUR N'A PLUS DE CREDIT	
		}
	}else{
		//TODO L'UTILISATEUR DOIT SE CONNECTEZ OU SINSCRIRE
	}
  }
Le problème c'est que j'ai cette erreur qui s'affiche lors de la recupération des valeur dans mes tables liés (left join) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
Fatal error: Call to undefined method Doctrine_Collection::getCout() in /home/sfproject/bigenchere/apps/frontend/modules/enchereclic/actions/actions.class.php on line 88
Je pense que ma méthode de récupération de l'élément "enchère_clic" n'est pas la bonne (car ma requête me semble valide).

Est t'il possible de récupérer des enregistrement en utilisant un objet ( ex : $this->enchereClic=new enchereClic() ) plutôt qu'une requête doctrine si oui comment faire pour utiliser cette méthode ??

Peut être que je devrais créer une/des fonction(s) dans le(s) modèle(s) ??

je suis débutant en symfony et certaine notions du MVC sont encore un peu flou à mes yeux.

Merci d'avance