Inclure deux page php dans une seule marche pas

Résolu/Fermé
mayson - Modifié le 27 mai 2020 à 21:04
 mayson - 29 mai 2020 à 20:44
Bonjour,

j'ai deux dossier dans mon projet chaqu'un il gére un tableau de donnée avec la possibilité d'ajouté, modifié ou supprimé les données ,


alors j'ai essayé d'utilisé include sur la page index pour affiché le contenu des deux dossiers , et vu que je suis null en javascript j'ai pu créé difficilement des scripts avec jquery et ajax pour géré les modals et laffichage du tableau que j'ai copié collé sur chaqu'un des deux dossier, mais sur ma page index principale un seul tableau s'affiche parceque j'ai copié collé mon fichier script sur chaque dossier donc ca créé une erreur , le probléme c'est que je sais pas comment nommé chaque script pour qu'il soit autentique a chaque dossier

exemple d'une partiede mon fichier js pour affiché les donnés dans le tableau 1:
function fetch() {
 $.ajax({
  method: 'POST',
  url: 'table1/affiche_donne.php',
  success: function (response) {
   $('#table1body').html(response);
  }
 });
}

tableau2:
function fetch() {
 $.ajax({
  method: 'POST',
  url: 'table2/affiche_donne.php',
  success: function (response) {
   $('#ttable2body').html(response);
  }
 });
}


EDIT : Ajout des balises de code
A voir également:

3 réponses

voila mon fichier JS
désolé dans le premier massage nommé chaque script pour qu'il soit identique a chaque dossier
$(document).ready(function () {
 fetch();
 //add
 $('#addnew').click(function () {
  $('#add').modal('show');
 });
 $('#addForm').submit(function (e) {
  e.preventDefault();
  var addform = $(this).serialize();
  //console.log(addform);
  $.ajax({
   method: 'POST',
   url: 'table1/add.php',
   data: addform,
   dataType: 'json',
   success: function (response) {
    $('#add').modal('hide');
    if (response.error) {
     $('#alert').show();
     $('#alert_message').html(response.message);
    }
    else {
     $('#alert').show();
     $('#alert_message').html(response.message);
     fetch();
    }
   }
  });
 });
 //

 //edit
 $(document).on('click', '.edit', function () {
  var id = $(this).data('id');
  getDetails(id);
  $('#edit').modal('show');
 });
 $('#editForm').submit(function (e) {
  e.preventDefault();
  var editform = $(this).serialize();
  $.ajax({
   method: 'POST',
   url: 'table1/edit.php',
   data: editform,
   dataType: 'json',
   success: function (response) {
    if (response.error) {
     $('#alert').show();
     $('#alert_message').html(response.message);
    }
    else {
     $('#alert').show();
     $('#alert_message').html(response.message);
     fetch();
    }

    $('#edit').modal('hide');
   }
  });
 });
 //

 //delete
 $(document).on('click', '.delete', function () {
  var id = $(this).data('id');
  getDetails(id);
  $('#delete').modal('show');
 });

 $('.id').click(function () {
  var id = $(this).val();
  $.ajax({
   method: 'POST',
   url: 'table1/delete.php',
   data: { id: id },
   dataType: 'json',
   success: function (response) {
    if (response.error) {
     $('#alert').show();
     $('#alert_message').html(response.message);
    }
    else {
     $('#alert').show();
     $('#alert_message').html(response.message);
     fetch();
    }

    $('#delete').modal('hide');
   }
  });
 });
 //

 //hide message
 $(document).on('click', '.close', function () {
  $('#alert').hide();
 });

});

function fetch() {
 $.ajax({
  method: 'POST',
  url: 'table1/fetch.php',
  success: function table1(response) {
   $('#tbody').html(response);
  }
 });
}

function getDetails(id) {
 $.ajax({
  method: 'POST',
  url: 'table1/fetch_row.php',
  data: { id: id },
  dataType: 'json',
  success: function (response) {
   if (response.error) {
    $('#edit').modal('hide');
    $('#delete').modal('hide');
    $('#alert').show();
    $('#alert_message').html(response.message);
   }
   else {
    $('.id').val(response.data.id);
    $('.famille').val(response.data.famille);
    $('.familleconfimration').html(response.data.famille);
   }
  }
 });
}


EDIT : Ajout des balises de code
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
27 mai 2020 à 21:17
Bonjour,

Déjà, pour poster du code sur le forum, pense à utiliser les balises de code.
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

Ensuite, tu parles d'inclure deux fichiers php.... mais en javascript ?
Quels sont les deux fichiers dont tu parles ??

En fait, tu ne veux pas les "inclure" dans ta page... mais y faire appel en Ajax ? c'est bien ça ??

Donc, pour chaque Tableau, tu veux pouvoir respectivement utiliser les scripts php qui se trouvent dans tes dossiers table1 et table2 ?

Bien entendu.. tu dois pouvoir les différencier au niveau du javascript.
Donc, pour ton premier exemple.. tu dois nommer une des deux fonction fetch autrement...
par exemple... fetch2
Et donc, y faire appel, là où tu en as besoin dans ton script...

Et pour ça, tu vas devoir modifier ton javascript pour cibler les éléments correspondants à chaque tableau...
Typiquement.. au lieu de cibler tous les éléments ayant une class "id" sur ta page, il va falloir utiliser une class différente pour chaque tableau ou alors trouver un autre selecteur...
Imaginons que tu aies mis un ID à chaque tableau
Dans ce cas, tu pourrais utiliser un selecteur du genre
 $('#montableau1>tr.id').click(function () {

Je te conseille de regarder les selecteurs existants et comment les utiliser
https://www.tutorialrepublic.com/jquery-reference/jquery-selectors.php

0
Merci beaucoup c'est résolu !
0