si tu fait une fonction connectMaBase() il faudrait peut etre l'utiliser ? (avant de faire une request notamment)
ps: surtout ne pas hésiter à mettre l'erreur dans google
Code : Tout sélectionner
<?php
error_reporting(E_ALL ^ E_NOTICE);
// variables de connexion a la base
$serveur = "localhost";
$base = "nagios_to_parcpc";
$user = "root";
$pass = "";
//variables des dossiers de traitement
$dossierencours="C:/Documents and Settings/900204/Bureau/Test";
$dossiertraite="C:/Documents and Settings/900204/Bureau/Archivage";
// connexion à MySQL
$mysqli = new mysqli($serveur, $user, $pass, $base);
if(mysqli_connect_errno()) {
printf ("Echec de la connexion:%s\n",mysqli_connect_error());
exit();
}
echo 'Information sur le serveur : '.$mysqli->host_info;
// on selectionne que les fichiers xml
$liste = glob($dossierencours."/*.xml");
// pour chaque fichier on extrait le contenu
foreach ($liste as $file)
{
echo "traitement de $file <br/>\n";
$contenu = file_get_contents($file);
$xml = simplexml_load_string($contenu);
$insertion = mysql_query("INSERT INTO notifications (Alerte, Type_Notification, Service, Hote, Adresse_IP, Etat, ID_Etat, Descriptif, Date_Heure) VALUES ('$alerte', '$typenotif', '$service', '$hote', '$adresse_ip', '$etat', '$descr', '$timestamp')");
$filename = basename($file); //nom du fichier
rename($file,"$dossiertraite/${filename}_fini.xml"); //déplace
}
// deconnexion de la base
$mysqli->close();<?php
error_reporting(E_ALL ^ E_NOTICE);
// variables de connexion a la base
$serveur = "localhost";
$base = "nagios_to_parcpc";
$user = "carlo";
$pass = "xxxxx";
//variables des dossiers de traitement
$dossierencours="C:/Documents and Settings/900204/Bureau/Test";
$dossiertraite="C:/Documents and Settings/900204/Bureau/Archivage";
// connexion à MySQL
$mysqli = new mysqli($serveur, $user, $pass, $base);
if(mysqli_connect_errno()) {
printf ("Echec de la connexion:%s\n",mysqli_connect_error());
exit();
}
echo 'Information sur le serveur : '.$mysqli->host_info;
// on selectionne que les fichiers xml
$liste = glob("$dossierencours/*.xml");
// pour chaque fichier on extrait le contenu
foreach ($liste as $file)
{
echo "traitement de $file <br/>\n";
$contenu = file_get_contents($file);
$xml = simplexml_load_string($contenu);
$insertion = mysql_query("INSERT INTO notifications (Alerte, Type_Notification, Service, Hote, Adresse_IP, Etat, ID_Etat, Descriptif, Date_Heure) VALUES ('$alerte', '$typenotif', '$service', '$hote', '$adresse_ip', '$etat', '$id_etat', '$descr', '$timestamp')");
$filename = basename($file); //nom du fichier
rename($file,"$dossiertraite/${filename}_fini"); //déplace
}
// deconnexion de la base
$mysqli->close();
?>
Avant il me disait "acces denied" à la base et "A link to the server could not be established" après j'ai changé le mot de passe et il me semble avoir marché un coup.$xml = simplexml_load_string($contenu);
est du genre:Code : Tout sélectionner
traitement de C:/Documents and Settings/900204/Bureau/Test/201405190631124567890
12.xml <br/>
SimpleXMLElement Object
(
[alerte] => Service
[typenotif] => RECOVERY
[service] => service-vidal_hoptimal_server
[hote] => terra
[adresse_ip] => 172.19.0.16
[etat] => OK
[id_etat] => 0
[descr] => 1 process named medicament.exe ( 0)
[timestamp] => 2014-05-19 06:31:12
)
traitement de C:/Documents and Settings/900204/Bureau/Test/201405200837092345678
90.xml <br/>
SimpleXMLElement Object
(
[alerte] => HOST
[typenotif] => RECOVERY
[service] => SimpleXMLElement Object
(
)
[hote] => info_stage_1
[adresse_ip] => 192.168.12.89
[etat] => UP
[id_etat] => 0
[descr] => PING OK - Paquets perdus = 0%, RTA = 2.07 ms
[timestamp] => 2014-05-20 08:37:09
)
traitement de C:/Documents and Settings/900204/Bureau/Test/201405200837093456789
01.xml <br/>
SimpleXMLElement Object
(
[alerte] => HOST
[typenotif] => RECOVERY
[service] => SimpleXMLElement Object
(
)
[hote] => info_stage_1
[adresse_ip] => 192.168.12.89
[etat] => UP
[id_etat] => 0
[descr] => PING OK - Paquets perdus = 0%, RTA = 0.76 ms
[timestamp] => 2014-05-20 08:37:09
)
C:\Documents and Settings\900204\Bureau\Test>