Bonjour,
Je suis en train de faire des statistiques sur l'exploitation d'un portail captif et je me sers de requêtes SQL pour y parvenir. J'affiche tout ces résultats dans une page Web et je me sers occasionnellement d'AJAX pour l'affichage. C'est le cas juste ici :
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 <?php include "connexion2.php"; $sql = "SELECT DISTINCT username FROM radacct"; $req = mysqli_query($connect, $sql) or die('Erreur SQL : '.mysql_error()); echo '<form name="choix"><select name="utilisateurs" onchange="infos()">'; echo '<option value="">Sélectionner un nom</option>'; while ($row = mysqli_fetch_row($req)) { echo "<option value='".$row[0]."'>".$row[0]."</option>"; } echo '</select></form><br />'; echo '<div id="infos"></div><br />'; ?>
Jusqu'ici, ça fonctionne, j'ai bel et bien mes utilisateurs dans ma liste déroulante. Je veux lors de la sélection d'un utilisateur, afficher le nombre de connexions de celui-ci.
Fonction JS :
test.php :
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 function infos() { i = document.choix.utilisateur.selectedIndex; if (i == 0) { return; } utilisateur = document.choix.utilisateurs.options[i].value; xmlhttp = new XMLHTTPRequest(); xmlhttp.onreadystatechange = function() { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { document.getElementById("infos").innerHTML = xmlhttp.responseText; } } xmlhttp.open("GET","test.php?username="+utilisateur,true); xmlhttp.send(); }
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <?php include "connexion2.php"; $nomUtilisateur = $_GET['username']; $sql = "SELECT COUNT(*) FROM radacct WHERE username = " + $nomUtilisateur + ";"; $req = mysqli_query($connect, $sql) or die('Erreur SQL : '.mysql_error()); $rows = mysql_fetch_array($req); return $rows[0]; ?>
Le problème est le suivant : je n'ai aucun affichage de résultat quel que soit l'utilisateur sélectionné. Merci de m'aider à la résolution de ce petit problème.
Partager