Bonjour,
tout d'abord je tiens à vous préciser que je suis méga débutante en Ajax.
Et secundo, je pense que mon problème peut se résoudre grâce à Ajax mais je n'en ai pas la certitude.
Je vous explique.
J'ai un champ "Mail" où l'on tape une adresse et on a des solutions proposées pour ce qu'on a tapé (autocomplétion faite).
Une fois que la personne a sélectionné dans la liste le mail qu'elle veut, il faudrait que sur l'évènement onChange de ce champ "Mail", j'affiche un tableau contenant les informations relatives au mail sélectionné.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 // Champ pour entrer le mail $divlogma = <<<END <div id='liste' style='width:300px;position:relative;'> <input type='text' name='reclogm' id='reclogm' onChange="infodomaine();"> </div> END;
Que ma fonction infodomaine(); écrite dans le code javascript, m'affiche le tableau de ma requête.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 // Requête et tableau à afficher une fois qu'on a sélectionné le bon mail $tabinfo[] = array(labels => ",Login,Destination"); $SQLinfo = "SELECT source,destination FROM emails WHERE source LIKE '% ... %'"; $Q = mysql_db_query($SQLinfo); $i=1; while ($R = mysql_fetch_array($Q)) { $tabinfo[$i] = array(descD => $i, valC1 => $R['source'] ); $i++; }Si je le fais en PHP-JS, ma requête sera déja effectuée alors que je n'aurai pas encore fait de sélection dans mon champ "Mail".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 // Ce à quoi ressemble ma fonction en JS infodomaine() function infodomaine() { // Ca c'était une tentative, afin qu'une fois dans ce code, le php détecte $declench à 1 et exécute ainsi la requête var declench = 1; document.getElementById('info').style.display="block"; }
J'ai tenté de mettre un if (var = 1) { faire requête }, en mettant la variable à 1 dans le javascript, mais ça c'est foireux totalement.
Je sais que PHP est côté serveur et JS côté client, donc apparement j'ai lu à quelques endroits qu'Ajax était la meilleure solution, mais comme je n'y connais rien j'aurai besoin d'aide ... =)
Partager