Vous n'êtes pas identifié(e).
Heu non j'ai seulement ca :
J'ai remplacé mes deux lignes par ta ligne :
Et ..
AVANT
Andres
APRES
APRES WHILE
Omg ca marche .. O.O
Jtaime ! xD
Franchement merci je vais pouvoir avancer ca gere
Thx a toi Maljuna Kris et merci aussi à toi xTG *_*
-------------------
Maintenant que ca, ca fonctionne, j'essaye de recuperer toute les adresses mac du reseaux, donc je creer un fichier .sh : (A mon avis je suis pu dans la bonne catégorie du forum :X)
# Suppression du fichier temporaire
rm /tmp/recupnom.php
# Recupere les informations
nmap -sP 192.168.0.0/24 >> /tmp/recupnom.php
# Affiche les Mac et les Nom
grep '.iris\|00:' /tmp/recupnom.php
Car je veux recuperer les adresse mac et le nom de la machine de chaque post.
Je recupere ceci pour le .iris :
Host Max-PC.iris (192.168.0.10) appears to be up.
etc
Je recupere ceci pour le 00: :
MAC Address: 00:**:**:**:**:** (Intel Corporate)
etc
Ce que je voudrais faire, c'est recuperer juste l'adresse mac sous forme de variable $adresse_mac 00:**:**:**:**:**et idem pour le nom de la machine : Max-PC.iris $nom_machine
Et qu'en suite, ces variables s'enregistre dans la base de donnée.
Pour l'enregistrement je sais faire je crois, mais avec le fichier .sh .. je galere en shell xD
Encore merci pour tout
Dernière modification par ElevedIRIS (09-02-2010 15:51:40)
Hors ligne
Et bien voila .. me revoila x)
J'ai encore un souci avec Mysql .. j'aurais bien continué à chercher, sauf que je suis en vacance ce soir, et que pour mon programme j'ai besoin d'etre au lycée pour qu'il fonction, il releve les adresses mac du reseaux :
Si l'utilisateur appuye sur Scan, Ca va lancer ca :
<?
if($ScanValider=="Scanner")
{
exec('/usr/lib/cgi-bin/ScriptScanAdresseMac.cgi');
$cmd = exec('/usr/lib/cgi-bin/ScriptScanAdresseMac.cgi');
if (file_exists("/var/www/ProjetBTS1/recupfinish.php"))
{
?>
<center>
<TABLE border=outset width="600" height="50" bgcolor="grey">
<td>
<center>
<center><table border=outset width=900 bgcolor="grey">
<td colspan=3 bgcolor="white">
<h2><center>Compte rendu du Scan effectué :</center></h2></td>
<tr>
<td>
<?
$fp = fopen("/var/www/ProjetBTS1/recupfinish.php","r+"); //lecture du fichier
$i = 0; //on définit la variable $i qui sera notre nombre que l'on incrémentera. Ici $i va commencer à 0
while (!feof($fp))
{ //on parcourt toutes les lignes
$ligne[$i] .= fgets($fp); // lecture du contenu de la ligne
echo $ligne[$i];
mysql_query("INSERT INTO Info_PC_IRIS (Adresse_Mac) VALUES ('$ligne[$i]');");
$i++;
echo "<br>";
}
echo "Scan Terminé, il y a actuellement $i post sur le reseaux. <br>";
?>
<tr>
<td>
<center><input type="button" onclick="history.go(-1)" value="Retour"></center>
<?
}
else
{
?>
<center>
<TABLE border=outset width="600" height="50" bgcolor="grey">
<td>
<center>
Le Scan a echoue.
</center>
</TABLE>
<td>
<input type="button" onclick="history.go(-1)" value="Retour">
<?
}
}
Voici le script en Shell qui s'execute :
# Suppression du fichier temporaire
if [ -f /var/www/ProjetBTS1/recuptest.php ]
then sudo rm /var/www/ProjetBTS1/recuptest.php
fi
if [ -f /var/www/ProjetBTS1/recupfinish.php ]
then sudo rm /var/www/ProjetBTS1/recupfinish.php
fi
# Trims out only relevant lines
sudo nmap -sP 192.168.0.0/24 > /var/www/ProjetBTS1/recuptest.php
grep '^[MAC]' /var/www/ProjetBTS1/recuptest.php | cut -c 14-31 > /var/www/ProjetBTS1/recupfinish.php
Je recupere bien mes adresses mac, et quand je lance le scan j'obtient :
00:xx:xx:xx:xx:xx
00:xx:xx:xx:xx:xx
00:xx:xx:xx:xx:xx
00:xx:xx:xx:xx:xx
etc
Scan Terminé, il y a actuellement 25 post sur le reseaux.
Et ca me recupere bien chaque adresse mac du reseaux.
Le souci, c'est que dans ma base de donnée, ca me rentre que la premiere adresse mac dedan :X
Hors ligne
Au debut je recupere ca :
Host Max-PC.iris (192.168.0.10) appears to be up.
MAC Address: 00:xx:xx:xx:xx:xx (Unknown)
Aprés je fais en sorte d'affichere que les ligne contenant 00:, ca m'affiche ca :
MAC Address: 00:xx:xx:xx:xx:xx (Unknown)
Puis je lui demande de couper les caractere et de garder seulement du 14eme au 32 eme et j'obtient :
00:xx:xx:xx:xx:xx
00:xx:xx:xx:xx:xx
etc
Donc la séparation entre chaque adresse .. je dirais le retoure a la ligne, une ligne une adresse non ?
while (!feof($fichier))
{
$ligne = fgets($fichier,4096);
$tableauValeurs= explode("\n",$ligne);
mysql_query("INSERT INTO Info_PC_IRIS (Adresse_Mac) VALUES ('$tableauValeurs[0]', '$tableauValeurs[1]');");
echo "<br>";
}
fclose($fichier);
echo "Scan Terminé, il y a actuellement $i post sur le reseaux. <br>";
?>
J'ai essayé de faire une variable par ligne comme tu ma dis, et ca me renvoie :
Array s'too
Dernière modification par ElevedIRIS (12-02-2010 12:13:24)
Hors ligne
Ton soucis vient alors de la taille de ce que tu lis.
Personnellement j'utiliserai plutôt une fonction telle que fscanf pour lire dans ce type de fichier en y spécifiant des entiers afin de n'avoir aucun soucis de taille.
Hors ligne