Remplir automatiquement champs grace à liste

jeinny Messages postés 135 Statut Membre -  
 Inepsy -
Bonjour,

voila je suis en stage et je voudrait créer un formulaire de modification (en PHP) celui-ci se compose de 8 champs dont une liste déroulate dynamique construit à l'aide de donné d'une table de ma base de données.
et je souhaiterai que lorsque l'utilisateur sélectionne se champs ça lui affiche les autre pour qu'il puissent ensuite faire les modifications nécessaires.

J'ai vu déja sur quelque forum la dessus mais pratiquement tous son non résolu, il parle de recharger le page moi ça m'ai égale qu'elle se recharge, j'ai vu aussi qu'il faudra surement utiliser AJAX ou JAVASCRIPT mais le soucis c'est que j'ai regardé les cours et tutoreil la dessus mais je n'y comprend vraiment rien ! :(

Voila, je vous remerci d'avance pour vos réponses et pour l'aide que vous pourez me donner. :)
A voir également:

13 réponses

Ozimandias Messages postés 528 Statut Membre 46
 
Voici un exemple de Ajax, je débute alors soyez indulgents.:

<script language="javascript" type="text/javascript" >
<!--
function rempli_sousgamme(gamme){

var xhr_object = null; 
 
if(window.XMLHttpRequest) // Firefox 
	   xhr_object = new XMLHttpRequest(); 
	else if(window.ActiveXObject) // Internet Explorer 
	   xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); 
	else { // XMLHttpRequest non supporte par le navigateur 
   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
   return; 
	}
	

var method = "POST";
var filename = "includes/retour_java_sousliste_gamme.php";
var data = null;
var gamme_choisie = gamme;

xhr_object.open(method, filename, true);


xhr_object.onreadystatechange = function() { 
	   if(xhr_object.readyState == 4) { 
				eval(xhr_object.responseText);
				//document.getElementById('select_rub2').innerHTML = xhr_object.responseText;
			}
			}
				
xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
data = "gamme="+gamme_choisie;
xhr_object.send(data); 		 

}

-->
</script>


Ce code fait quoi?

Eh bien, il appelle le fichier "includes/retour_java_sousliste_gamme.php" lui passe le paramètre "gamme="+gamme_choisie le fichier en question est un fichier php qui crée un code java qui sera évalué par la fonction ci dessus(eval(xhr_object.responseText);), voici le fichier php:

<? 
header('Content-type: text/html; charset=iso-8859-1');

	include('Fichier qui contient les mots de passe');
												
	mysql_connect($db_serveur, $db_user, $db_pass);		
	mysql_select_db( $db_name);												

$SQL_liste_gamme = 'SELECT *  FROM `gamme2` WHERE type = "'.$_POST['gamme'].'"';
	
	$recup_liste_gamme = mysql_query($SQL_liste_gamme);
	
echo 'var s = document.forms["ajout"].elements["rubrique2"];'; 
	echo 's.options.length = 0;'; 
	while($r = mysql_fetch_array($recup_liste_gamme)) 
	    echo 's.options[s.options.length] = new Option("'.addslashes($r["libelle_fr"]).'", '.$r["id_gamme"].');'; 

?>


Le résultat de cette manip: je remplit la liste déroulante qui s'apelle rubrique2 grace à ma base de données et sans recharger la page.

En espérant t'avoir éclairé...

:)
0
jeinny Messages postés 135 Statut Membre 26
 
je te remerci je vai regardé ça je te redirai sa !!
0
jeinny Messages postés 135 Statut Membre 26
 
mai le premier code que tu donne c'est une page html ou ajax??

si c'est ajax c'est bien une extension .js ???
0
Ozimandias Messages postés 528 Statut Membre 46
 
De rien ^^

bon courage...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Ozimandias Messages postés 528 Statut Membre 46
 
Le premier bout de code est dans une page HTML dans la balise HEAD c'est juste une petite fonction java que tu appelle lors d'un onClick ou onMouseOver (par exemple). En fait, pour faire simple, AJAX n'est pas un langage. C'est plutôt un ensemble de fonctions de java qui te permet d'envoyer des requêtes au serveur. Désolé pour les puristes qui vont hurler, c'est la façon la plus simple que j'ai trouvé pour l'expliquer.
0
jeinny Messages postés 135 Statut Membre 26
 
donc ce premier bout de code je le met dans la même page ou jai ma liste é les autre champs??
ou dans une autre? je suis désolé mais je n'y connai vraiment rien en javscript ni ajax donc c'et pour ça que je pose autant de uestion se qui pourrai parraitre un peu bête pour certain ! merci encore !!
0
Ozimandias Messages postés 528 Statut Membre 46
 
Voila, tu le mets dans la page ou tu souhaites l'appeler.
0
jeinny Messages postés 135 Statut Membre 26
 
bonojur je pense avoir trouvé un autre solution a mon problème mais j'en ai encore quelques uns.
voila javai eu pour idée de mettre en paramètre l'ID de la ligne sélectionné dans la liste pour ensuite l'utilisé dans une requête afin de remplir mes champs. mais cela ne fonctionne pas je ne vois pas trop comment faire pour lepasser en paramètre. bien entendu la page et obligé de se recharger mais cela ne me pose pas de problème.

merci de votre aide.
0
jeinny Messages postés 135 Statut Membre 26
 
personne ne peut m'aider ??!! sniff : (
0
jeinny Messages postés 135 Statut Membre 26
 
personne ne peut m'aider ??!! sniff : (
0
jeinny Messages postés 135 Statut Membre 26
 
personne ne peut m'aider ??!! sniff : (
0
jeinny Messages postés 135 Statut Membre 26
 
personne ne peut m'aider ??!! sniff : (
0
Inepsy
 
Up, j'essaie de remplir les champs une fois la valeur dans la base sélectionnée, mais je n'y arrive vraiment pas... J'avais réussi à le faire avec un rechargement de la page, mais je veux à tout prix le faire en AJAX.
Merci d'avance pour votre aide, j'en ai grand besoin :(
0