par
sacco » 11 mars 2007, 16:31
bonjour,
je traite plusieurs fichiers dans le même dossier et à chaque fin de traitement le fichier est effacé et passe au suivant. Or lorsque le script en est au dernier le unlink tombe en "Warning: unlink(C:/wamp/www/Arcserve/log/xxxx) [function.unlink]: Permission denied in C:\wamp\www\Arcserve\ori.php ".
le code est
Code : Tout sélectionner
$files = glob($Arcservetest);
foreach ($files as $filename)
{
if(file_exists($filename)==true)
{
if($filename !== "." && $filename != "..")
{
$Log = file($filename);
//Pas de timeout;
set_time_limit (0);
//ouverture BD
$sqldb = new PDO("mysql:host=localhost;dbname=test","root","") or die ("impossible d'ouvrir bdd !");
$query = "insert into journal (JDate,JHeure,JInfo,JAction) values (:JDate,:JHeure,:JInfo,:JAction)";
$stmt = $sqldb->prepare($query);
foreach ($Log as $ligne)
{
$JDate =substr($ligne,0,4).'-'.substr($ligne,4,2).'-'.substr($ligne,6,2);
$Datebis = substr($ligne,0,4).substr($ligne,4,2).substr($ligne,6,2);
$JHeure = substr($ligne,9,6);
$i = substr($ligne,18,4);
$JAction = substr($ligne,23,$ligne-1);
/******Pour 7 jours de rétension*******
$Format = 'Ymd';
$Datesys = (int)date($Format);
$Diff = $Datesys-$Datebis;
**************************************/
if($i<>'PE ' and $i<>' ')
{
$stmt->bindParam(':JDate',$JDate);
$stmt->bindParam(':JHeure',$JHeure);
$stmt->bindParam(':JInfo',$i);
$stmt->bindParam(':JAction',$JAction);
$stmt->execute();
}
}
}
$erase = unlink($filename);
}
merci d'avance si astuce
bonjour,
je traite plusieurs fichiers dans le même dossier et à chaque fin de traitement le fichier est effacé et passe au suivant. Or lorsque le script en est au dernier le unlink tombe en "Warning: unlink(C:/wamp/www/Arcserve/log/xxxx) [function.unlink]: Permission denied in C:\wamp\www\Arcserve\ori.php ".
le code est
[code]
$files = glob($Arcservetest);
foreach ($files as $filename)
{
if(file_exists($filename)==true)
{
if($filename !== "." && $filename != "..")
{
$Log = file($filename);
//Pas de timeout;
set_time_limit (0);
//ouverture BD
$sqldb = new PDO("mysql:host=localhost;dbname=test","root","") or die ("impossible d'ouvrir bdd !");
$query = "insert into journal (JDate,JHeure,JInfo,JAction) values (:JDate,:JHeure,:JInfo,:JAction)";
$stmt = $sqldb->prepare($query);
foreach ($Log as $ligne)
{
$JDate =substr($ligne,0,4).'-'.substr($ligne,4,2).'-'.substr($ligne,6,2);
$Datebis = substr($ligne,0,4).substr($ligne,4,2).substr($ligne,6,2);
$JHeure = substr($ligne,9,6);
$i = substr($ligne,18,4);
$JAction = substr($ligne,23,$ligne-1);
/******Pour 7 jours de rétension*******
$Format = 'Ymd';
$Datesys = (int)date($Format);
$Diff = $Datesys-$Datebis;
**************************************/
if($i<>'PE ' and $i<>' ')
{
$stmt->bindParam(':JDate',$JDate);
$stmt->bindParam(':JHeure',$JHeure);
$stmt->bindParam(':JInfo',$i);
$stmt->bindParam(':JAction',$JAction);
$stmt->execute();
}
}
}
$erase = unlink($filename);
}
[/code]
merci d'avance si astuce