Bonjour,

J'aurais besoin de votre aide pour modifier un code qui fonctionne mais que j'aimerais améliorer et apprendre à faire pour progresser. Merci.

Au lieu de changer l'affichage (et économiser les echo php), j'aimerais retourner à la page HTML les 4 données ($donnees['***']) et les afficher directement dans la div Resultat.
Je pense qu'il faut modifier la partie $.ajax({***}) en utilisant peut-être json mais je ne sais pas comment faire.

Merci pour vos conseils et vos explications.

Cordialement

---

Voici mon code :

Page HTML :
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
 
<form>
	<label>RNE : </label><br /><input type="text" value="" size="10" maxlength="8" id="RNE" /><span class="erreur-msg" ></span>
	<div id="Resultat">
		<input type="text" placeholder="Nom de l\'&eacute;tablissement ou de l\'&eacute;cole" name="lieu_exercice" size="60" value="" />
		<input type="text" placeholder="Adresse du lieu d\'exercice" name="adresse_exercice" size="60" value="" /><br />
		<table>
			<tr>
				<td><input type="text" placeholder="Code postal" name="CP_exercice" size="10" maxlength="5" style="text-align:center;" value="" /></td>
				<td style="width:50px;"></td>
				<td><input type="text" placeholder="Commune" name="commune_exercice" size="30" value="" /></td>
			</tr>
		</table>
	</div>
</form>
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
 
<script language="JavaScript">
	$("#RNE").change(function() {
		var RNE=$('#RNE').val();
		var reg=new RegExp('^[0-9]{7}[a-z A-Z]{1}$','g');
		if (RNE.length>0) {
			if (reg.test(RNE)) {
				$('#RNE').next('.erreur-msg').fadeOut();
				$.ajax({
					type	: 'post',
					url		: 'etablissement.php',
					data	: 'RNE='+RNE,
					success	: function(txthtml) {$('#Resultat').html(txthtml);}
				});
			} else {
				$('#RNE').next('.erreur-msg').fadeIn().text('Veuillez entrer un numéro d\'établissement de 7 chiffres et 1 lettre');
			}
		}
	});
</script>
Page PHP :
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
 
<?php
	include ('connexion.php');
	$RNE=(isset($_POST['RNE']))?$_POST['RNE']:0;
	$RNE=strtoupper($RNE);
	$bdd=new PDO('mysql:host='.$Serveur.';dbname='.$Bdd3,$Login3,$Password3);
	$reponse=$bdd->query('SELECT * FROM rne WHERE id="'.$RNE.'"');
	$donnees=$reponse->fetch();
	$reponse->closeCursor();
	echo '<input type="text" placeholder="Nom de l\'&eacute;tablissement ou de l\'&eacute;cole" name="lieu_exercice" size="60" value="'.utf8_encode($donnees['nom']).'" />';
	echo '<input type="text" placeholder="Adresse du lieu d\'exercice" name="adresse_exercice" size="60" value="'.utf8_encode($donnees['adresse']).'" /><br />';
	echo '<table><tr>';
	echo '<td><input type="text" placeholder="Code postal" name="CP_exercice" size="10" maxlength="5" style="text-align:center;" value="'.$donnees['code_postal'].'" /></td>';
	echo '<td style="width:50px;"></td>';
	echo '<td><input type="text" placeholder="Commune" name="commune_exercice" size="30" value="'.$donnees['commune'].'" /></td>';
	echo '</tr></table>';
?>