Envoi des variable par onclick()

Résolu
karango Messages postés 80 Date d'inscription   Statut Membre Dernière intervention   -  
karango Messages postés 80 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
J'ai un souci, je voudrais recuperer des variables dans mon ficher supprimer pour faire la mise a jour d'une table. Alors
comment peut on envoyer les variable par onclick() function? je ne veux pas utiliser le formulaire.

NB: je utilise php, ajax et modal bootstrap.

voici les fichies:

remove.php

<?php

require_once '../../layout/core.php';

$output = array('success' => false, 'messages' => array());

$co_id = $_POST['command_id'];
$montant_vente = $_POST['MontantVente'];
$montant_revient = $_POST['MontantRevient'];
$co_date = $_POST['DateCommand'];

$sql = "DELETE FROM commandes WHERE co_id = {$co_id}";
$query = $conn->query($sql);
$query = $conn->query("select EXTRACT(MONTH FROM co_date) as m,EXTRACT(YEAR FROM co_date) as a from commandes where co_date='$co_date'");
$row = $query->fetch_assoc();
$m=$row['m'];
$a=$row['a'];
$query = $conn->query("update marges set marge_net=marge_net-$montant_vente-$montant_revient where mois=$m and annee=$a");
if($query === TRUE) {
 $output['success'] = true;
 $output['messages'] = 'Successfully removed';
} else {
 $output['success'] = false;
 $output['messages'] = 'Error while removing the commands information';
}

// close database connection
$conn->close();

echo json_encode($output);


le lien de suppression qui se trouve dans le retrieve.php

$actionButton = '
 <div class="btn-group">
   <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
     Action <span class="caret"></span>
   </button>
   <ul class="dropdown-menu">

     <li><a type="button" data-toggle="modal" data-target="#removeCommandModal" onclick="removeCommand('.$row['co_id'].')"> <span class="glyphicon glyphicon-trash"></span> Remove</a></li>
   </ul>
 </div>
  ';


le code de modal remove dans index.php

<!-- remove modal -->
 <div class="modal fade" tabindex="-1" role="dialog" id="removeCommandModal">
   <div class="modal-dialog" role="document">
     <div class="modal-content">
       <div class="modal-header">
         <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
         <h4 class="modal-title"><span class="glyphicon glyphicon-trash"></span> Remove Command</h4>
       </div>
       <div class="modal-body">
         <p>Do you really want to remove ?</p>
       </div>
       <div class="modal-footer">
         <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
         <button type="button" class="btn btn-primary" id="removeBtn">Save changes</button>
       </div>
     </div><!-- /.modal-content -->
   </div><!-- /.modal-dialog -->
 </div><!-- /.modal -->
 <!-- /remove modal -->


la function removeCommand de fichier commands.js

function removeCommand(co_id = null) {
 if(co_id) {
  // click on remove button
  $("#removeBtn").unbind('click').bind('click', function() {
   $.ajax({
    url: '/public/src/commands/remove.php',
    type: 'post',
    data: {command_id : co_id},
    dataType: 'json',
    success:function(response) {
     if(response.success == true) {
      $(".removeMessages").html('<div class="alert alert-success alert-dismissible" role="alert">'+
         '<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>'+
         '<strong> <span class="glyphicon glyphicon-ok-sign"></span> </strong>'+response.messages+
       '</div>');

      // refresh the table
      manageCommandTable.ajax.reload(null, false);

      // close the modal
      $("#removeCommandModal").modal('hide');

     } else {
      $(".removeMessages").html('<div class="alert alert-warning alert-dismissible" role="alert">'+
         '<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>'+
         '<strong> <span class="glyphicon glyphicon-exclamation-sign"></span> </strong>'+response.messages+
       '</div>');
     }
    }
   });
  }); // click remove btn
 } else {
  alert('Error: Refresh the page again');
 }
}


je dois recuperer variable $co_date pour faire ma requete de selection, et le $montant_vente et $montant_revient pour faire la mise a jour.

aider moi. merci!




A voir également:

1 réponse

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

Tu veux passer les variables à ta fonction ?
Dans ce cas tu fais comme pour ta première variable... tu les passes dans ta fonction
onclick="removeCommand('.$row['co_id'].','.$row['autre_varaibe'].')"

0
karango Messages postés 80 Date d'inscription   Statut Membre Dernière intervention  
 
ok merci, mais et dans la function removeCommand qu'est ce que je dois mettre pour envoyer les variable dans remove.php.
j'ai essaye ca,

function removeCommand(co_id = null) {
if(co_id) {
// click on remove button
$("#removeBtn").unbind('click').bind('click', function() {
$.ajax({
url: '/public/src/commands/remove.php',
type: 'post',
data: {command_id : co_id,DateCommand : co_date,MontantVente : montant_vente,MontantRevient : montant_revient},
dataType: 'json',
success:function(response) {
if(response.success == true) {
$(".removeMessages").html('<div class="alert alert-success alert-dismissible" role="alert">'+
'<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>'+
'<strong> <span class="glyphicon glyphicon-ok-sign"></span> </strong>'+response.messages+
'</div>');

// refresh the table
manageCommandTable.ajax.reload(null, false);

// close the modal
$("#removeCommandModal").modal('hide');

} else {
$(".removeMessages").html('<div class="alert alert-warning alert-dismissible" role="alert">'+
'<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>'+
'<strong> <span class="glyphicon glyphicon-exclamation-sign"></span> </strong>'+response.messages+
'</div>');
}
}
});
}); // click remove btn
} else {
alert('Error: Refresh the page again');
}
}



data: {command_id : co_id,DateCommand : co_date,MontantVente : montant_vente,MontantRevient : montant_revient},


le server cette erreur

ReferenceError: co_date is not defined [Learn More] commands.js:120:31
quand je essaye de supprimer.
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Tu dois récupérer les variables dans la déclaration de ta fonction
function removeCommand(co_id, Tesautresvariables ...)
0
karango Messages postés 80 Date d'inscription   Statut Membre Dernière intervention  
 
merci!
0