Je n'arrive pas à insert (Je ne voit pas d'où viens mon erreur)
Résolu
ScreamFR
Messages postés
73
Date d'inscription
Statut
Membre
Dernière intervention
-
ScreamFR Messages postés 73 Date d'inscription Statut Membre Dernière intervention -
ScreamFR Messages postés 73 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Je n'arrive pas à insert (Je ne voit pas d'où viens mon erreur)
- Qui voit mon profil facebook - Guide
- Touche insert - Guide
- Si je bloque quelqu'un sur messenger le voit il - Guide
- Qui voit mon profil instagram - Guide
- Erreur 0x80070643 - Accueil - Windows
3 réponses
Bonjour,
Là, comme ça, ça va être compliqué de te donner la réponse....
Commence par ouvrir la console javascript de ton navigateur ( je te conseille d'utiliser FIREFOX pour débuguer l'ajax )
et regarde si tu n'as pas des messages d'erreur...
Ajoute également quelques console.log dans ton code JS pour essayer de voir ce qui se passe
il faut aussi ajouter le "error" sur l'ajax pour voir les éventuels soucis ...
par exemple :
Là, comme ça, ça va être compliqué de te donner la réponse....
Commence par ouvrir la console javascript de ton navigateur ( je te conseille d'utiliser FIREFOX pour débuguer l'ajax )
et regarde si tu n'as pas des messages d'erreur...
Ajoute également quelques console.log dans ton code JS pour essayer de voir ce qui se passe
il faut aussi ajouter le "error" sur l'ajax pour voir les éventuels soucis ...
par exemple :
$("#button_save").click(function(){ console.log('button_save CLICK !! '); var lastRowId = $('#table tr:last').attr("id"); /*finds id of the last row inside table*/ var numeros = new Array(); var article = new Array(); var referencearticle = new Array(); var cout = new Array(); var quantite = new Array(); var tva = new Array(); var remise = new Array(); for ( var i = 1; i <= lastRowId; i++) { numeros.push($("#"+i+" .numeros"+i).html()); article.push($("#"+i+" .article"+i).html()); referencearticle.push($("#"+i+" .referencearticle"+i).html()); cout.push($("#"+i+" .cout"+i).html()); quantite.push($("#"+i+" .quantite"+i).html()); tva.push($("#"+i+" .tva"+i).html()); remise.push($("#"+i+" .remise"+i).html()); } var sendNumeros = JSON.stringify(numeros); var sendArticle = JSON.stringify(article); var sendRef = JSON.stringify(referencearticle); var sendcout = JSON.stringify(cout); var sendquantite = JSON.stringify(quantite); var sendTVA = JSON.stringify(tva); var sendremise = JSON.stringify(remise); var datas = { numeros : sendNumeros, article : sendArticle, referencearticle : sendRef, cout : sendcout, quantite : sendquantite, tva : sendTVA, remise : sendremise, }; console.log('DATAS',datas); $.ajax({ url: "php/insert_articles_facture.php", type: "POST", data: datas, success:function(data){ console.log('REPONSE AJAX',data); }, error: function(xhr, ajaxOptions, error){ console.log('ERREUR AJAX',xhr, ajaxOptions, error); var errorMessage = xhr.status + ': ' + xhr.statusText alert('Error - ' + errorMessage); } }); });
Merci bonjour, j'ai trouver mon erreur j'ai oublie d'enlever le [$i] dans la requête pour id_session vue qui n'est pas le tableau ca a tout fait bug ,
Mais j'ai rencontre un petit autre problème:
en gros après l'ajoute de mes articles ,j'ai crée une liste avec toutes les factures et dans la liste
ya la partie montant : (c'est l'ensemble du montant de tout les articles) donc pour chaque article je doit faire (cout * quantite) pour tout les articles.
Mon code :
Bien sur c'est pas comme ca j'ai enlever toutes les autres balises html , pour conclure ca ne marche pas et ce que j'ai essaye de faire :
($articless['cout'] * $articless['quantite']) + ($articless['cout'] * $articless['quantite']) + ect ect // de l'ensemble des articles dans la boucles
Mais j'ai rencontre un petit autre problème:
en gros après l'ajoute de mes articles ,j'ai crée une liste avec toutes les factures et dans la liste
ya la partie montant : (c'est l'ensemble du montant de tout les articles) donc pour chaque article je doit faire (cout * quantite) pour tout les articles.
Mon code :
// le select pour récupérer le cout et la quantité $pdoStt = $bdd->prepare('SELECT cout,quantite FROM articles WHERE id_session = :num AND numeros=:numeros'); $pdoStt->bindValue(':num',"1"); //$_SESSION['id_session'] $pdoStt->bindValue(':numeros',$factures['numerosfacture']); //$factures est le numéros de la facture pour laquelle les articles sont assigné $pdoStt->execute(); $articles = $pdoStt->fetchAll(); // var_dump($articles); array (size=3) 0 => array (size=2) 'cout' => string '10' (length=2) 'quantite' => string '10' (length=2) 1 => array (size=2) 'cout' => string '10' (length=2) 'quantite' => string '20' (length=2) 2 => array (size=2) 'cout' => string '10' (length=2) 'quantite' => string '10' (length=2) // la partie affichage <?php foreach($article as $articless): $montant = $articless['cout'] * $articless['quantite']; $montant_t += $montant; endforeach; ?> <td><span class="invoice-amount"><?= $montant_t; ?> <?= $factures['monnaie'] ?></span></td>
Bien sur c'est pas comme ca j'ai enlever toutes les autres balises html , pour conclure ca ne marche pas et ce que j'ai essaye de faire :
($articless['cout'] * $articless['quantite']) + ($articless['cout'] * $articless['quantite']) + ect ect // de l'ensemble des articles dans la boucles
Bon...
Déjà, il est d'usage sur ce forum que pour un "nouveau souci" on créé une discussion qui lui soit propre....
Merci d'y penser à l'avenir !
Quoi qu'il en soit,
Maintenant, si ton but c'est juste d'avoir le total... il suffit de faire
PS: Merci de mettre la discussion en RESOLUE.
.
Déjà, il est d'usage sur ce forum que pour un "nouveau souci" on créé une discussion qui lui soit propre....
Merci d'y penser à l'avenir !
Quoi qu'il en soit,
// le select pour récupérer le cout et la quantité try{ $sql = "SELECT cout ,quantite ,(cout * quantite ) as TOTAL FROM articles WHERE id_session = :num AND numeros=:numeros"; $req = $bdd->prepare($sql); $req->bindValue(':num',"1"); //$_SESSION['id_session'] $req->bindValue(':numeros',$factures['numerosfacture']); //$factures est le numéros de la facture pour laquelle les articles sont assigné $req->execute(); $articles = $req->fetchAll(); }catch(Exception $e){ echo "Erreur " . $e->getMessage(); } // var_dump($articles); $montant_t = 0; if(!empty($articles)){ foreach($articles as $A){ $montant_t += float($A['TOTAL']); } }
Maintenant, si ton but c'est juste d'avoir le total... il suffit de faire
try{ $sql = "SELECT SUM(T.TOTAL) as MONTANT_T FROM ( SELECT cout ,quantite ,(cout * quantite ) as TOTAL FROM articles WHERE id_session = :num AND numeros=:numeros ) T "; $req = $bdd->prepare($sql); $req->bindValue(':num',"1"); //$_SESSION['id_session'] $req->bindValue(':numeros',$factures['numerosfacture']); //$factures est le numéros de la facture pour laquelle les articles sont assigné $req->execute(); $res = $req->fetch(); }catch(Exception $e){ echo "Erreur " . $e->getMessage(); } // var_dump($res ); $montant_t = !empty($res) ? $res['MONTANT_T'] : 0;
PS: Merci de mettre la discussion en RESOLUE.
.