'k', 'host'=>$computer)); // kill processus distant break; case "D": db_query($db, $req_con_D); // déconnexion PostURL($rpc_url, array('act'=>'k', 'host'=>$computer)); PostURL($rpc_url, array('act'=>'p', 'host'=>$computer)); // start processus distant break; case "M": // collecte marque, modèle, architecture $marque = db_escape_string($db, $_POST["manufacturer"]); $modele = db_escape_string($db, $_POST["model"]); $type = db_escape_string($db, $_POST["systemType"]); // collecte RAM, vitesse processeur, taille disque C: et espace libre $ram = db_escape_string($db, $_POST["ram"]); $procSpeed = db_escape_string($db, $_POST["procSpeed"]); $diskSize = db_escape_string($db, $_POST["diskSize"]); $freeSpace = db_escape_string($db, $_POST["diskFreeSpace"]); // collecte mac address et description à partir des tableaux JSON des interfaces de la machine $mac = ""; $descr = ""; $mac_array = json_decode(str_replace(",]", "]", $_POST["mac"])); // nettoyage la virgule de fin dans le tableau json avant decode() $ip_array = json_decode(str_replace(",]", "]", $_POST["ip"])); $descr_array = json_decode(str_replace(",]", "]", $_POST["descr"])); $ip_index = array_search($ip, $ip_array); // recherche de l'IP de connexion dans la liste des IP json if (false !== $ip_index) { // si l'IP existe dans le tableau, on récupère la mac et la description associées $mac = db_escape_string($db, $mac_array[$ip_index]); $descr = db_escape_string($db, $descr_array[$ip_index]); } // requête de mise à jour des marque, modèle, archi et mac address de la machine $req = "UPDATE machines SET marque = \"{$marque}\", modele = \"{$modele}\", type_systeme =\"{$type}\""; $req = $req . ", mac = \"{$mac}\", mac_description = \"{$descr}\", ram = $ram, procSpeed = $procSpeed, diskSize = $diskSize, freeSpace = $freeSpace"; $req_modele_machine = $req . " WHERE machine_id = \"{$computer}\""; db_query($db, $req_modele_machine); break; } // fin switch } else { // renvoi sur le menu principal header('Location: '.$winlog_url.'/admin/index.php'); } ?>