Bonjour, je cherche à faire une page interne qui me permette de voir qui est connecté à mon serveur d'applications (MATLAB). Pour cela j'utilise le fichier de log que j'ouvre.
Ma question : Peut-on faire une recherche de 2 chaînes de caractères dans la même ligne, pour pouvoir par la suite, suivant le résultat, incrémenter ou décrémenter une variable qui s'affiche dans un tableau.
La variable en question est le nombre de licence restant disponible.
Ma page de base, suit ma page de fonction :
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54 <HTML><TITLE>Page de consultation de l'occupation de MATLAB</TITLE> <HEAD><CENTER><H2> Occupation du serveur MATLAB </H2></CENTER></HEAD> <BODY> <H6 ALIGN=RIGHT> <?php echo date("l F dS, Y - H:i:s"); ?> <br> Your IP: <?php echo $_SERVER['REMOTE_ADDR']; ?> </H6> <?php require_once 'fonctions.php'; require_once 'Matlab/fonction.php'; #Détections des erreurs ini_set('display_startup_errors', "1") ; ini_set('log_errors', "1") ; ini_set('error_log', 'php_errors.log') ; error_reporting(E_ALL) ; ?> <TABLE width="100%"border=1> <TR> <TD width="10%"><CENTER> Signalisation </CENTER></TD> <TD width="25%"><CENTER> Nom de l'application </CENTER></TD> <TD width="10%"><CENTER> Maximum </CENTER></TD> <TD width="15%"><CENTER> Disponible </CENTER></TD> <TD width="30%"><CENTER> Utilisateurs </CENTER></TD> </TR> <TR> <TD> </TD> <TD><CENTER> MATLAB </CENTER></TD> <TD><CENTER> 15 </CENTER></TD> <TD><CENTER> <?php get_info("15","\"MATLAB\""); ?> </CENTER></TD> <TD><FORM><SELECT NAME="choix" SIZE="1"> <?php get_Application("\"MATLAB\""); ?> </SELECT></FORM></TD> </TR> </TABLE> </BODY> </HTML>
Comme vous pouvez vous en doutez, je décremente quand il y a un "IN" et je dois incrémentez quand il y a un "OUT" en plus du nom de l'application.
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
39
40
41
42
43
44
45
46
47
48
49 <?php // Copyright (C) 2007 Eric "Bebert" Lambert : Bebert_lambert@hotmail.com //------------------------------------------------------------------------ // Cette fonction retourne le temps courant //------------------------------------------------------------------------ function get_microtime() { list($usec, $sec) = explode(" ", microtime()); return ((float)$usec + (float)$sec); } //------------------------------------------------------------------------ // Cette fonction retourne toutes les personnes qui se sont connectées //------------------------------------------------------------------------ function get_Application($application) { mysql_connect("localhost", "root", "Motdepasse") or die ("La connection au serveur MySQL à échouée"); // Connexion à MySQL mysql_select_db("Matlab") or die ("La connection a la base de données à échouée"); // Sélection de la base $query="SELECT DISTINCT Utilisateur FROM Matlab WHERE Application='$application' ORDER BY Utilisateur;"; $result=mysql_query($query) or die($query . "-" . mysql_error()); while ($ligne=mysql_fetch_array($result)) { echo' <OPTION> '.$ligne['Utilisateur'].'</OPTION>'; } mysql_close(); // Déconnexion de MySQL } //------------------------------------------------------------------------ // Cette fonction retourne le nombre de licence restante //------------------------------------------------------------------------ function get_info($i, $Application) { $inF = fopen($log,"r"); $tableau = file($log); foreach ($tableau as $line_num => $line) { if (stristr($line,'IN') AND stristr($line,'$Application')) { $i = $i-1; fclose($inF); die("ok"); } } echo"$i"; fclose($inF); } ?>
Je suis débutant en php, aidez-moi merci.
Partager