Bonjour! Je suis bloquée depuis une semaine sur ce code. Au début j'ai cru que c'était le foreach qui marchait pas... Puis un éclair de génie m'est venu et j'ai un count(). Le count me renvoie 0 of course. Donc ma requete ne fonctionne pas.
C'est le dernier truc que je dois faire pour mon projet! Je stresse!
Merci à ceux qui peuvent m'aider... Je m'arrache les cheveux!

En gros je dois comparer deux tables afin de mettre à jour la variable $etatValidation à 0 ou 1. J'en ai besoin pour un traitement que je fais dans la fenêtre qui affiche les données.

Bien à vous.

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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
 
<?php
 
/**
 * SeriesVehiculeTable
 * 
 * This class has been auto-generated by the Doctrine ORM Framework
 */
class SeriesVehiculeTable extends Ratp_Doctrine_Table
{
    /**
     * Returns an instance of this class.
     *
     * @return object SeriesVehiculeTable
     */
    public static function getInstance()
    {
        return Doctrine_Core::getTable('SeriesVehicule');
    }
 
	public function getAll($offset, $limit, array $filters = array(), array $sort = array(), array $params = array(), $query = null)
    {
		$refFournisseur = $params['refFournisseur'];
		$refOskar = $params['refOskar'];
		$modele = $params['modele'];
		$typeConstructeur = $params['typeConstructeur'];
		$ajoutCommentaire = $params['ajoutCommentaire'];
 
		$etatValidation = 'shit';
 
		//comparer ici
		//recuperer les effectivites validees
		$tableEffectivitesValidees = Doctrine_Core::getTable('EffectivitesValidees');
		$requete = $tableEffectivitesValidees->createQuery();
		$requete->select('serie');
		$requete->where('modele = ?', array($modele));
		$requete->andWhere('typeConstructeur = ?', array($typeConstructeur));
		$requete->andWhere('numArticle = ? OR numArticle = ?', array($refFournisseur, $refOskar));
		$req1res = $requete->execute(array(), Doctrine::HYDRATE_SCALAR); //count() retourne 0
 
		//recuperer les series a comparer
		$tableSeriesVehicule = Doctrine_Core::getTable('SeriesVehicule');
		$requete2 = $tableSeriesVehicule->createQuery();
		$requete2->select('serie');
		$requete2->where('modele = ?', array($modele));
		$requete2->andWhere('typeConstructeur = ?', array($typeConstructeur));
		$req2res = $requete2->execute(array(), Doctrine::HYDRATE_SCALAR);; //count() retourne 0
 
//		foreach($req2res as $serieVeh){
//			foreach($req1res as $effVal){
//				$serie = $serieVeh;
//				$serieVal = $effVal;
//				if($serie == $serieVal){
//					$etatValidation = 1;
//					//$query = $this->createQuery();
//					//$query->addSelect('\'' . $etatValidation . '\' as etatValidation, \'' . $refFournisseur . '\' as refFournisseur, \'' . $refOskar . '\' as refOskar, \'' . $ajoutCommentaire . '\' as ajoutCommentaire, *'); 
//					//$query->where('modele = ?', array($params['modele']));
//					//return parent::getAll($offset, $limit, $filters, $sort, array(), $query);
//				}
//				else {
//					$etatValidation = 0;
//					//$query1 = $this->createQuery();
//					//$query1->addSelect('\'' . $etatValidation . '\' as etatValidation, \'' . $refFournisseur . '\' as refFournisseur, \'' . $refOskar . '\' as refOskar, \'' . $ajoutCommentaire . '\' as ajoutCommentaire, *'); 
//					//$query1->where('modele = ?', array($params['modele']));
//					//return parent::getAll($offset, $limit, $filters, $sort, array(), $query1);
//				}
//			}
//		}
 
		//comparer ici
 
		$query = $this->createQuery();
		$query->addSelect('\'' . $req2res . '\' as etatValidation, \'' . $refFournisseur . '\' as refFournisseur, \'' . $refOskar . '\' as refOskar, \'' . $ajoutCommentaire . '\' as ajoutCommentaire, *'); 
		//$query->addSelect('\'' . $refFournisseur . '\' as refFournisseur, \'' . $refOskar . '\' as refOskar, \'' . $ajoutCommentaire . '\' as ajoutCommentaire, *'); 
        $query->where('modele = ?', array($params['modele']));
 
		return parent::getAll($offset, $limit, $filters, $sort, array(), $query);
    }
}