Transactions ne fonctionne pas correctement dans la requête insert

Zakaria Sichaib:

Donc, je suis en train d'exécuter une requête à l'aide d'une transaction, mais il ne fonctionne pas en quelque sorte j'ai vérifié tous les postes, mais pas de solution semble fonctionner! chaque fois que je supprime la transaction la requête d'insertion fonctionne très bien.

Voici le contrôleur:

public function addEmployee(){
        $field = array(
            'NomClient'=>$this->input->post('fullName'),
            'TelClient'=>$this->input->post('tel'),
            'WilayaClient'=>$this->input->post('wilaya'),
            'CommuneClient'=>$this->input->post('commune'),
            'AdresseClient'=>$this->input->post('adresse'),
            'StatusID'=>$this->input->post('statusCommande'),
            'TelevendeuseID'=>$this->input->post('televendeuse')
            );
        $result= $this->m->addEmployee($field);
        $msg['success'] = false;
        $msg['type'] = 'add';
        if($result){
            $msg['success'] = true;
        }
        echo json_encode($msg);

    }

Mon modele :

public function addEmployee($field){

         $this->db->trans_start();
         return $this->db->insert('Clients',$field);
         $this->db->trans_complete();

    }

S'il vous plaît noter que lorsque je passe le modèle:

    public function addEmployee($field){


         return $this->db->insert('Clients',$field);


    }

L'enregistrement est insérée avec succès! Ce qui signifie que quelque chose ne va pas avec la transaction. J'utilise actuellement une requête pour tester si elle fonctionne donc je peux utiliser après multiples onces. Notez que les tables sont des tables InnoDB si le problème est pas avec le type de table. Sil te plait aide moi !

Nigel Ren:

Lorsque vous appelez returncela mettra fin à la fonction, alors quand il frappe

return $this->db->insert('Clients',$field);

il ne sera pas à

$this->db->trans_complete();

alors peut être...

$this->db->trans_start();
$return = $this->db->insert('Clients',$field);
$this->db->trans_complete();

return $return;

Je suppose que tu aimes

Origine http://10.200.1.11:23101/article/api/json?id=387600&siteId=1
conseillé
Classement