Utliser ajax a partir des résultat d'un fichier php

Signaler
Messages postés
115
Date d'inscription
mardi 9 novembre 2010
Statut
Membre
Dernière intervention
18 mai 2016
-
Messages postés
31547
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
2 mars 2021
-
Bonjour,
Je suis nouveau dans l'utilisation d'ajax et la j'ai un petit soucis.
Je sais qu'ajax utilise les échanges avec la base de données pour le remplissage d'un formulaire par exemple, mais le soucis c'est que je voudrais remplir un formulaire à partir d'un fichier qui récupère ses données à partir d'une api.
je m'explique plus :
le formulaire est dans la page index.php
<form id="user-form" method="post" action="traitement.php" enctype="multipart/form-data" class="validator">
<div class="field">
<label>Nom</label>
<input type="text" size="30" name="nom" id="nom" class="f-input" value=""  required="required"/>
</div>
<div class="field">
<label>Pnom</label>
<input type="text" size="30" name="pnom" id="pnom" class="f-input" value=""  required="required"/>
</div>
<div class="field">
<label>Fonction</label>
<input type="text" size="30" name="fonction" id="fonction" class="f-input" value=""  required="required"/>
</div>
 <div class="act">
						<input type="submit" value="" name="commit" id="submit" class="traitcontact"/>
						
					</div>
					
				</form>

et le fichier de traitement est sur la page api.php et il contient les variables dont j 'ai besoin après l'interrogation de l'api
//après interrogation de l'api j'obtient les résultat
$nom
$pnom
$fonction
$age
//....

le but alors et de faire l'autoremplissage des autres champs à partir de du fichier api.php sans avoir a rafraichir ou a appuyer sur un bouton
j'espère que vous avez compris.
merci

1 réponse

Messages postés
31547
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
2 mars 2021
344
Bonjour,

Ton fichier api.php .. est utilisé QUE pour ce cas là ou tu l'utilises aussi dans d'autres endroits de ton site ?

Si il n'est utilisé que pour ce cas là .. il suffit que tu stocke toutes ces variables (celles dont tu as besoin) dans un Array.

Puis à la fin du fichier tu fais un json_ecnode($tonarray);


$monArray=array();

//après interrogation de l'api j'obtient les résultat
$monArray['nom'] = $nom;
$monArray['pnom'] = $pnom;
$monArray['fonction'] = $fonction;
$monArray['age'] = $age;
//....

echo json_encode($monArray);


Tes variables seront donc accessibles dans ton ajax (javascript) et tu pourras remplir tes champs à ta convenance.

$.ajax({
       url : 'api.php',
       type : 'POST',
       dataType : 'json',
       success : function(reponse){ 
	   // ICI tu mets le code à faire lorsque l'ajax a fonctionné
	   // par exemple :
	   console.log(reponse);
       },
       error : function(resultat, statut, erreur){
	      alert("erreur..."+erreur);
       }
    });