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

AJAX Discussion :

[AJAX] Filtrer comme Excel un tableau PHP


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 8
    Par défaut [AJAX] Filtrer comme Excel un tableau PHP
    Bonjour,
    Dans le sujet de mon stage en entreprise, je dois pouvoir appliqué des filtres comme sous excel sur le tableau de resultat d'une requete SQL.
    Sachant que par exemple j'ai la table membre avec nom, prenom dedans.
    J'ai deux listes déroulante : nom et prenom
    Si je selectionne Dupont dans les nom et que j'ai les freres dupont : Jean et Gerard il ne doit y avoir plus que Jean et Gerard d'afficher dans les prenoms.
    Et en dessous du formulaire de recherche les resultats s'affiche sans mettre a jour toute la page.

    Jusqu'a maintenant j'ai fait quelque chose d'un peu flou et faux
    J'ai une premiere page test.php qui contient le formulaire de "filtrage" a 7 Champs. Par AJAX dès que je modifiais une de mes listes J'envoyais tous les valeurs de chaque liste, par la méthode GET, a la page test2.php.
    Suite a ca la page 2 se connect a la DB, recupere mon tableau de TOUTE les valeurs et pas seulement celle filtrer, et ensuite traite le filtrage a l'aide de 2 tableaux : Celui contenant toutes les données et celui contenant les données filtré.

    Le filtrage ce fait de la maniere suivante (Bien sur ici j'ai appliqué a mon exemple de nom et prenom)
    Code php : 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
    if(isset($_GET['nom']) && $_GET['nom']!="" && $_GET['nom']!="Nom")
    {
    	$tabFiltre = ajouterFiltre($tabDonnee,$tabFiltre, $_GET['nom'], 0);
    }
     
    if(isset($_GET['prenom']) && $_GET['prenom']!="" && $_GET['prenom']!="Prenom")
    {
    	$tabFiltre = ajouterFiltre($tabDonnee,$tabFiltre, $_GET['prenom'], 1);
    }
     
     
    function ajouterFiltre($tabDonnee, $tabFiltre, $filtre, $colonne){
    	if(sizeof($tabFiltre)>0){
    		for($i = 0; $i < sizeof($tabFiltre); $i++)
    			if($tabFiltre[$i][$colonne] != $filtre) unset($tabFiltre[$i]);
     
    		$tabFiltre=array_values($tabFiltre);
    	}
    	else {
    		for($i = 0; $i < sizeof($tabDonnee); $i++)
    		{
    			if(($tabDonnee[$i][$colonne]==$filtre)==0)	array_push($tabFiltre,$tabDonnee[$i]);
    		}
    	}
    	return $tabFiltre;
    }

    Je creer ensuite un tableau contenant les resultats de ma requete et ce tableau je le renvoie pour le recevoir sur test.php grace a responsesText.

    Seulement je pense que vous l'avez compris je ne peux pas recuperer de variable $tableau contenant ce tableau dans test.php et donc il m'est impossible de mettre a jour mes autres champs comme ici le champ prenom.
    Mon but est donc de pouvoir avoir cette variable sans passé par les SESSIONS ou les COOKIES.

    J'ai décidé de passé par AJAX pour ne pas avoir a changer de page et pouvoir executé en arriere plan les requetes.

    Si vous avez d'autre informations n'hésiter pas !

    Merci d'avance

    Cordialement,
    Neobrain

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonjour,

    Fait une petite recherche sur "javascript tablesorter".

    A+.

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 8
    Par défaut
    C'est plus du tri d'un tableau ca, moi ce n'est pas du tri mais du filtre que je veux faire

  4. #4
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Ok, on modifie alors les mots clés pour la recherche "jQuery table filter" .

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 8
    Par défaut
    Après avoir chercher toute la journée voici la solution ! Merci beaucoup

    Par contre, j'peux tout a faire faire ce type de filtrage tout en affichant les lignes sur plusieurs pages ?
    Car bon il y aura a peu près 3000 élements dans ma base final donc bon : /

    EDIT : Je sais faire du decoupage de resultat par page mais la ca pose un probleme du faite que le tableau est un resultat de la requete asynchrone Je craque un peu ^^

  6. #6
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 8
    Par défaut
    Bonjour,
    J'ai recherché un peu et je n'ai pas encore trouvé le moyen de dissocié les colonnes de filtrage du tableau ce qui est mon but final, j'aimerais affiché le resultat sur plusieurs "pages".
    En faite c'est plutot afficher le resultat comme les topics ici, après un certains nombre de message il 2 ou plusieurs pages.

    Merci.

    Cordialement

Discussions similaires

  1. Réponses: 0
    Dernier message: 05/03/2013, 11h47
  2. Réponses: 1
    Dernier message: 15/08/2011, 14h55
  3. [AJAX] Génération de menu déroulant contenant une tableau php
    Par emageren dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 18/04/2007, 11h46
  4. Réponses: 5
    Dernier message: 06/01/2007, 11h09
  5. Tableau croisé comme excel
    Par sunvialley dans le forum Access
    Réponses: 3
    Dernier message: 22/12/2006, 09h05

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