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

JavaScript Discussion :

[AJAX] envoie de données à un formulaire de manière asynchrone


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2008
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 43
    Points : 20
    Points
    20
    Par défaut [AJAX] envoie de données à un formulaire de manière asynchrone
    bonjour

    J'ai un script qui récupère des données d'une base de donnée de manière asynchrone (avec une fonction en ajax) mais et il les envoie vers des emplacements de type text et des listes déroulantes d'un formulaire.
    Mon souci est de savoir comment envoyer les données bon endroit.
    J'ai essayer de le faire avec une récupération de l'id mais le résultat est que ça me creer de d'autre emplacements (différents de eux du formulaire).

    merci

  2. #2
    Membre expérimenté Avatar de DoubleU
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 106
    Points : 1 388
    Points
    1 388
    Par défaut
    Sans code point de salut...

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2008
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 43
    Points : 20
    Points
    20
    Par défaut
    dsl

    voici mon la fonction ajax qui est générer dans mon formulaire:

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     
    function getXhr()
    			{
                    var xhr = null; 
    				if(window.XMLHttpRequest) // Firefox et autres
    				   xhr = new XMLHttpRequest(); 
    				else if(window.ActiveXObject){ // Internet Explorer 
    				   try {
    			                xhr = new ActiveXObject("Msxml2.XMLHTTP");
    			            } catch (e) {
    			                xhr = new ActiveXObject("Microsoft.XMLHTTP");
    			            }
    				}
    				else { // XMLHttpRequest non supporté par le navigateur 
    				   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
    				   xhr = false; 
    				} 
                                    return xhr;
    			}
     
    			/**
    			* Méthode qui sera appelée sur le click du bouton
    			*/
    			function go(){
    				var xhr = getXhr();
    				// On défini ce qu'on va faire quand on aura la réponse
    				xhr.onreadystatechange = function(){
    					// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
    					if(xhr.readyState == 4 && xhr.status == 200){
    						leselect = xhr.responseText;
    						document.getElementById('clee').innerHTML = leselect;
     
    					}
    				}
     
    				// Ici on va voir comment faire du post
    				xhr.open("POST","champs2.php",true);
    				// ne pas oublier ça pour le post
    				xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    				// ne pas oublier de poster les arguments
     
    				sel = document.getElementById('nom');
    				inde = sel.options[sel.selectedIndex].value;
    				xhr.send("inde="+inde);
    			}
    le script champ2.php

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
     
     
    <?php
    	echo "<textarea name='CheminImportation'>";
     
    	if(isset($_POST["inde"]))
    	{	
    	$temp2=$_POST["inde"];
     
    	 //echo "message recu";
     
     
    	 /* Connexion bdd */ 	
     
    	 $bd= "importation"; /* Base de données importation */ 
    						$hote= "localhost"; /* Hote (localhost en principe) */ 
    						$use= "root"; /* Utilisateur */ 
    						$pas= ""; /* Mot de passe */
    						@mysql_connect($hote,$use,$pas) or die("Impossible de se connecter à la base de données"); 
    						@mysql_select_db($bd);
     
     
    						$result = mysql_query("SELECT * FROM table_inputs_importation WHERE NomInput='$temp2'") or die(mysql_error());						
    						while($info = mysql_fetch_assoc($result))
    						{
    							echo $info["NomFichier"];
    						}
     
    						mysql_close(); // Déconnexion
    	}
     
    	echo "</textarea>";
    	echo "<br />";
    	echo "<select name='Cham'>";
    	if(isset($_POST["inde"]))
    	{
     
    	$temp=$_POST["inde"];
    		//echo " envoye de message1 sans base de donnee";
     
    		//echo "<option >message recue</option>";
     
     
    		/* Connexion bdd */ 	$bd= "importation"; /* Base de données importation */ 
    						$hote= "localhost"; /* Hote (localhost en principe) */ 
    						$use= "root"; /* Utilisateur */ 
    						$pas= ""; /* Mot de passe */
    						@mysql_connect($hote,$use,$pas) or die("Impossible de se connecter à la base de données"); 
    						@mysql_select_db($bd);
     
     
    						$result = mysql_query("SELECT * FROM table_champs WHERE NomInput='$temp'") or die(mysql_error());						
    						while($info = mysql_fetch_assoc($result))
    						{
    							echo "<option value='".$info["NomInput"]."'>".$info["Champs"]."</option>";
    						}
     
    						mysql_close(); // Déconnexion
     
    	}
    	echo "</select>";
    	//echo "<textarea> bonjour </textarea>";
    ?>
    les id CheminImportation et Cham sont des id du formulaire qui doivent etre actualisé par les donnés que je récupère dans la base de donnée seulement ça me créé d'autre emplacements dans le formulaire.

    merci

Discussions similaires

  1. Envoi de données de formulaire
    Par klmload dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 15/12/2009, 10h16
  2. [MySQL] Envoi de données dans formulaire d'édition
    Par knebhi dans le forum PHP & Base de données
    Réponses: 17
    Dernier message: 03/08/2009, 16h24
  3. [MySQL] message d'erreur lors de l'envois des données du formulaires
    Par paolo129 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 16/12/2008, 17h14
  4. [AJAX] Envoi de données POST vers page d'impression
    Par oneTime dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 15/10/2008, 12h36
  5. [AJAX] Envoi de donnée vers jsp
    Par Iphelias dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 17/07/2007, 12h51

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