IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

Save et Foreach [CakePHP]


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Janvier 2013
    Messages : 40
    Par défaut Save et Foreach
    Bonjour à tous

    J'ai un petit souci .... Voici mon code :
    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
     
     
    	public function ajaxProcessing($id = null) {
     
     
            // Cas des requêtes AJAX
            if ( $this->request->is( 'ajax' ) ) {
     
                // On récupère le nom à partir de l'id, ceci grâce à une requête en base de données
                $httpSocket = new HttpSocket();
                $url = 'http://*confidentiel*?uid='.$this->request->query[ 'uid' ].'&cuid='.$this->request->query[ 'cuid' ].'&startDate='.urlencode($this->request->query[ 'deb' ]).'&endDate='.urldecode($this->request->query[ 'fin' ]);
     
            	$result = $httpSocket->get($url);
     
            	$req = json_decode($result->body);
            	$response = Set::reverse($req);
     
                // Stockage des données à renvoyer à la vue dans un tableau
                if ( $result ){
     
                	foreach( $response as $key => $value){
                		$this->Regularity->Report->save(array('regularity_id' => $id, 'begindate' => $value['startDate'], 'titre' => $value['summary'], 'ref' => $key));
                		debug($key);
                	}
     
                    // $ret[ 'summary' ] = $response['SSUP-26864']['summary'];
                     //debug($ret['summary']);
                }
     
     
                // Il faut penser à terminer le script brutalement pour court-circuiter les mécanismes
                // de CakePHP (méthodes de la classe mère AppController par exemple)
                exit();
            }
            else {
                // Code qui servirait dans le cas de requêtes http classiques (par opposition à AJAX)
                // Pour nous dans cet exemple, c'est inutile...
            }
        }
    et le problème vient de :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    foreach( $response as $key => $value){
                		$this->Regularity->Report->save(array('regularity_id' => $id, 'begindate' => $value['startDate'], 'titre' => $value['summary'], 'ref' => $key));
                		debug($key);
                	}
    le debug me montre bien toutes les lignes de mon array, mais le save ne s'applique qu'à la dernière ligne ....

    Donc si j'ai 4 entrée dans mon tableau, le debug($key) s'applique bien les 4 fois, mais le save ne s'applique que pour la dernière ligne :/ Quelqu'un aurait une idée svp ?

    Cordialement,

    Paul !

  2. #2
    Membre averti
    Femme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Janvier 2013
    Messages : 40
    Par défaut
    Désolé du double post ... J'viens de comprendre qu'en fait le save ré-écrasait chaque enregistrement en bdd sur le même .. C'est pour ça qu'un final j'ai qu'une seule ligne ajouté(la dernière du tableau) au lieu de tout le tableau ... Quelqu'un sait comment empêcher ça et forcer le save à créer un nouvel insert to à chaque fois ?

  3. #3
    Membre averti
    Femme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Janvier 2013
    Messages : 40
    Par défaut
    Bon ben voilà triple poste et je met en résolu pour si des gens ont le même problème ... car j'ai fini par trouver la solution (un ami m'a aidé ^^) !

    il suffisait de rajouter un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $this->Regularity->Report->create();
    avant chaque save

    Cordialement,

    Paul !

    (si un admin juge ce topic inutile vu que j'ai apporté la solution moi-même libre à lui de le supprimer ) !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Unable to save result set
    Par souf dans le forum Requêtes
    Réponses: 3
    Dernier message: 19/07/2004, 15h41
  2. [Win32]Open/Save Dialog Box
    Par Chance666 dans le forum Windows
    Réponses: 2
    Dernier message: 07/01/2004, 16h47
  3. JBuilder 7 personnal sort à chaque save
    Par Hannouz dans le forum JBuilder
    Réponses: 4
    Dernier message: 17/12/2002, 22h53
  4. [VB6] [Graphisme] Dimensions d'une image au saving
    Par jeanseb dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 14/12/2002, 19h09
  5. Algo carry save adder
    Par bashou dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 18/10/2002, 11h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo