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

jQuery Discussion :

Reception données AJAX/PHP


Sujet :

jQuery

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 114
    Par défaut Reception données AJAX/PHP
    Bonjour tous le monde !

    J'aurais une question. J'ai une liste déroulante, avec un évènement onchange. Lorsque l'on change la données de la liste une fonction est appelé et va afficher dans une div en dessous de la liste d'autre données.

    La liste
    La liste :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <select name="data1" id="data1"  onChange="fonction_1();" >
                    <option value="0">Choisir...</option>
                    <option value="1">Lalala</option>
                    <option value="2">Lololo</option>
    </select>
    <div id="Div_Afficher_Donnees">
    </div>

    La fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function fonction_1(){
    	$("#Div_Afficher_Donnees").empty();
    	var Var1 = document.getElementById('data1').value ;
    	$.ajax({
    		type: "POST",
    		url: "PageTraitement.php",
    		data: "Var1 ="+encodeURIComponent(Var1 )+"&rdm="+Math.random()+"",
    		success: function(msg)
    		{
    			$("#Div_Afficher_Donnees").prepend(msg);						
    		}
    	}); 
    }
    Ma page de traitement
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    //Recuperation donnees de la liste
    $LaVar1 = $_POST['Var1'];
     
    //Requêtes dans la base de données pour récupérer des données
    [...]
    //Affichage des données

    Tous fonctionne, sa affiche bien les données que je souhaite dans la div.

    Par contre j'aimerais savoir si cette div, qui contient les données, est placé dans un <form method="POST" action="Lapage.php"> de la page initiale, peut envoyer les données que contient la div ??

    J’espère que vous avez un peu compris ^^

    Merci

  2. #2
    Membre actif
    Homme Profil pro
    Inscrit en
    Juin 2007
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 63
    Par défaut
    Non tu dois placer la donnée dans un input. La solution serrait d'en plus d'ajouter ton info dans la div de l'ajouter dans un input de type hidden.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 114
    Par défaut
    Merci pour la réponse.

    EDIT:

    Ce que j'affiche dans la div qui réceptionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="radio" name="Terna" id="Terna" value=" 1234 " ?>
    Et ça après il faut que je l'envoi du form de ma page principale vers une autre page... Mais il me le trouve pas...

    Re EDIT:

    J'ai déjà testé ce que tu dis. Ce qu'il y a dans la div qui réceptionne se sont des input de type radio. Ils sont affiché et on peut en sélectionner plusieurs. Une fois sélectionner on appui sur un bouton qui envoi les données sélectionnées vers une autre page.

    Mais sa ne me retourne rien du tous. Est ce que c'est possible ce que je demande ?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 114
    Par défaut
    Arf sa doit pas être possible de faire AJAX->PHP et d'envoyer les données récupérées vers une autre page PHP

  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 661
    Billets dans le blog
    1
    Par défaut
    on(), delegate() ...

    ou alors il suffit de recupérer les données pour les passer en data à un autre ajax
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 114
    Par défaut
    Oui du coup je renvoi tout en AJAX... Vu qu'il récupère bien les valeurs en AJAX...

    Est-il possible d'envoyer des données en JQUERY sans retour ?

    Du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function FoncA(){
    	var GLOBUL = document.getElementById('GLOBUL ').value ;
    		$.ajax({
    			type: "POST",
    			url: "TraiteDonnees.php",
    			data: "GLOBUL ="+encodeURIComponent(GLOBUL )+"&rdm="+Math.random()+"",			
            }); 
    }
    Et que sa charge et envoi les données sur la page TraiteDonnees ?

    EDIT: Bon on est en AJAX donc pas de rechargement de page donc je ne sais pas comment faire. . .

  7. #7
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 661
    Billets dans le blog
    1
    Par défaut
    si tu n'as pas besoin de retour ... pourquoi utiliser ajax ????

    passe par un form classique et fait ta redirection coté serveur ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 114
    Par défaut
    Bah j'aurais bien voulu que la liste déroulante soit dynamique... Du coup va falloir que je recharge la page obligatoirement ? Pas possible de récupérer des données AJAX pour ensuite les envoyer vers une autre page ?

  9. #9
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 661
    Billets dans le blog
    1
    Par défaut
    pas besoin de recharger ... comme sus dit renseignes toi sur on() et delegate()
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 114
    Par défaut
    Ok merci je vais y regarder

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 114
    Par défaut
    Est ce que vous auriez un exemple de on() et delegate() s'il vous plait ?

    Je n'ai pas vraiment compris leurs utilités

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 114
    Par défaut
    Petit up ^

    J'aurais besoin d'un coup de main pour mon affaire. Donc tous d'abord j'ai une page HTML qui contient un formulaire d'envoi sur une autre page.

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <form method="post" action="Page2.php" TARGET=_BLANK>

    Dans ce form on trouve une liste déroulante qui fait appelle à une fonction et qui va afficher les données dynamiquement sur la même page.

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <select name="MaData" id="MaData"  onChange="Ma_Data();" >
                    <option value="0">Choisir...</option>
                    <?php
                                $sql = "SELECT Data_uu FROM `Table_Data` ";
                                $req = mysql_query($sql) or die(mysql_error());
                                while($donnees = mysql_fetch_assoc($req)){
                                echo "<option value=".securite_bdd($donnees['Data_uu']).">".securite_bdd($donnees['Data_uu'])."</option>";
                                }
                    ?>
    </select>
    <div id="Recept_MesData">
    </div>

    La fonction Ma_Data envoi la données vers une page de traitement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    function Ma_Data(){
     
            var MaVal = document.getElementById('MaData').value ;
     
                    $.ajax({
                        type: "POST",
                        url: "TraiteData.php",
                        data: "MaVal ="+encodeURIComponent(MaVal )+"&rdm="+Math.random()+"",
                        success: function(msg)
                        {
                            $("#Recept_MesData").prepend(msg);                     
                        }
            });
     
    }
    Dans la page de traitement je fais des requêtes et affiche des résultats. Ses résultats sont ensuite affiché dans la div "Recept_MesData".

    Mon problème est que je n'arrive pas à envoyer les données de cette div dans la page "Page2.php".

    appelé par le form de départ... Et sachant que j'aimerais bien que cette liste déroulante reste dynamique, pas de rechargement de page.

    Voilà si quelqu'un aurait une solution je suis preneur

    Merci

  13. #13
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 233
    Par défaut
    Bonjour,
    ... je n'arrive pas à envoyer les données de cette div dans la page "Page2.php".
    (...)
    ...j'aimerais bien que cette liste déroulante reste dynamique, pas de rechargement de page.
    dans ce cas, comme dit plus avant, c'est à gérer coté serveur, ce sera l'un ou l'autre, l'intérêt des deux en même temps ??

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 114
    Par défaut
    Bonjour,

    Tout d'abord merci de votre réponse et de votre temps.

    Enfaite j'aimerais que la page soit un peu dynamique. Sans recharge de page, on réceptionne les données, puis on les envoi sur une autre page... Mais ce n'est peut-être pas possible ?

    Il faut que regarder du côté de on() et delegate() ? J'ai regardé pas mal de tuto dessus mais je ne comprends pas vraiment leurs utilités. Si vous avez des pistes...

    Encore merci

  15. #15
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 233
    Par défaut
    Enfaite j'aimerais que la page soit un peu dynamique. Sans recharge de page, on réceptionne les données, puis on les envoi sur une autre page... Mais ce n'est peut-être pas possible ?
    le moins que l'on puisse dire c'est que cela n'est pas limpide en tout cas en ce qui me concerne .

    Ajax te permet de recharger une partie de ta page après interrogation du serveur, c'est typiquement la technique que l'on utilise pour des listes interactives.
    Rien ne t'empêche de sauvegarder les données au passage.

    Si tu souhaites envoyer des données, les sauvegarder(ou non) puis les afficher sur une autre page, alors la soumission d'un formulaire standard est suffisante.

  16. #16
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 114
    Par défaut
    Les sauvegarder sa serait une bonne idée. Mais une sauvegarde BDD ?

    Et sinon j'utilise un form classique pour envoyer mes données, mais lorsque le form est envoyé il ne contient pas les données AJAX (qui sont des buttons radio. Et je dois récupérer sur la 2èmes pages la valeur du button radio )

    Merci

Discussions similaires

  1. Jquery,Ajax,PHP et transfert de donnée
    Par Samolo dans le forum jQuery
    Réponses: 2
    Dernier message: 14/09/2009, 06h36
  2. [AJAX] Type données dans php via ajax.
    Par Riko63 dans le forum AJAX
    Réponses: 2
    Dernier message: 08/08/2009, 15h04
  3. Réponses: 5
    Dernier message: 22/05/2009, 10h48
  4. [AJAX] Récupération de données AJAX -> PHP
    Par TheBuzz dans le forum Général JavaScript
    Réponses: 14
    Dernier message: 12/06/2008, 19h31
  5. [AJAX] Afficher les données d'une table AJAX PHP
    Par tetepro dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 25/04/2008, 22h59

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