Bonjour à tous.
Je commence juste à developper en AJAX. j'ai fait un tour sur les tuto et sur les divers ressources que j'ai trouvé sur le net. Seulement voilà, je n'arrive pas vraiment à m'en sortir.
Voilà ma situation.
J'ai une page php avec un formulaire. Dans ce formulaire un champ societe. Sur le onBlur de ce champs, je dois ouvrir un pop up qui me propose une liste de societe qui commence par la valeur du champ (WHERE societe LIKE '$valeur%').
Cette liste doit être de 10 societes puis on doit pouvoir faire suivant ou cliquer sur le numero des pages.
L'affichage comprend un lien sur le nom de la société. Au click sur ce lien, ça ferme le pop up et ça rempli le champ Societe de la page principale avec le nom de la liste qui a été cliqué.
Voilà maintenant des bouts de code.
Ma page principale :
Le formatage des url vient du fait que j'utilise le framework Zend.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 function popup() { if(document.form.societe.value != "") { newpage=open("/Devis/rechercheSociete/societe/"+document.form.societe.value,'newpopup','width=400,height=400,left=300,top=150,toolbar=no,scrollbars=no,resizable=no'); } } <input type="text" size="20" name="societe" onBlur="popup()">
Ma page popup :
Une troisième page qui contient ma requete SQL :
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 <html> <head> <script type='text/javascript'> 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; } xhr.open("POST", "ajaxSociete.php", true); xhr.onreadystatechange = function() { if(xhr.readyState == 4) eval(xhr.responseText); } xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xhr.send(tab_client); </script> </head> <body> <form name="form"> <input type="hidden" name="societe_client" value="a"><input type="hidden" name="affiche" value="1"> </form> </body></html>
Voilà ce que j'ai réussi à faire...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 header('Content-type: text/html; charset=iso-8859-1'); require 'connect.php'; $query = "SELECT * FROM client LIKE '".$_POST["societe"]."%'"; $result = mysql_query($query); echo 'var tab_client[]'; while($r = mysql_fetch_array($result)) echo 'tab_client[1][id]"'.$r["id_client"].'");';
Mais bon rien ne fonctionne.
Quelqu'un pourrait il m'aider un peu et orienter mes recherches.
Merci d'avance.
Partager