Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/09/2007, 16h33   #1
Invité régulier
 
Inscription : juillet 2007
Messages : 61
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 61
Points : 9
Points : 9
Par défaut taille de fichiers

bonjour


Je voudrais effectuer un traitement que si un fichier fait moins de 16 Mo, ou émettre une alerte sii il est superieur :
voici le script :

Code :
1
2
3
4
5
6
7
8
9
10
11
$lines = file ("/home/log/$rep/$file");
//verification de la taille du fichier
$Taille = filesize("/home/log/$rep/$file");
$taille_max = 16000000;
if((int)$tester < $taille_max){
.......
}
else
{
....
}
et .......... rien ! pas de message d'erreur, mais un fichier de 1Go est traité aussi !

Merci pour votre aide
pascalbout1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/09/2007, 17h14   #2
Rédacteur/Modérateur
 
Avatar de N1bus
 
Inscription : janvier 2003
Messages : 2 018
Détails du profil
Informations personnelles :
Âge : 47
Localisation : France, Charente Maritime (Poitou Charente)

Informations forums :
Inscription : janvier 2003
Messages : 2 018
Points : 1 992
Points : 1 992
Code :
1
2
3
4
 
$Taille = filesize("/home/log/$rep/$file");
$taille_max = 16000000;
if($Taille < $taille_max){ .........
d'où vient la variable $tester ?
N1bus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/09/2007, 17h18   #3
Invité régulier
 
Inscription : juillet 2007
Messages : 61
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 61
Points : 9
Points : 9
hop, pardon :

Code :
1
2
3
4
5
6
7
8
9
10
11
$lines = file ("/home/log/$rep/$file");
//verification de la taille du fichier
$tester = filesize("/home/log/$rep/$file");
$taille_max = 16000000;
if((int)$tester < $taille_max){
.......
}
else
{
....
}
pascalbout1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/10/2007, 11h56   #4
Invité régulier
 
Inscription : juillet 2007
Messages : 61
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 61
Points : 9
Points : 9
bonjour

je redemande votre aide car rien à faire, il n'y a pas d'erreur mais il ne se passe rien non plus !

Mon script se limite maintenant à cela :

Code :
1
2
3
4
5
6
$tester = filesize("/home/log/$rep/$file");
$taille_max = 16000000;
 
if($tester < $taille_max)
{
.........
merci
pascalbout1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/10/2007, 13h00   #5
Membre confirmé
 
Homme Edouard Viot
Ingénieur sécurité
Inscription : juillet 2007
Messages : 193
Détails du profil
Informations personnelles :
Nom : Homme Edouard Viot
Âge : 25
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Ingénieur sécurité
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : juillet 2007
Messages : 193
Points : 262
Points : 262
Citation:
Envoyé par pascalbout1 Voir le message
bonjour

je redemande votre aide car rien à faire, il n'y a pas d'erreur mais il ne se passe rien non plus !

Mon script se limite maintenant à cela :

Code :
1
2
3
4
5
6
$tester = filesize("/home/log/$rep/$file");
$taille_max = 16000000;
 
if($tester < $taille_max)
{
.........
merci
Test tes variables avant de faire ta comparaison

Code :
1
2
3
4
5
 
$tester = filesize("/home/log/".$rep."/".$file);
$taille_max = 16000000;
echo $tester."<br />";
echo $taille_max."<br />";
c'est surrement que $tester na pas la bonne valeur
Peut etre que filesize n'a pas les droits suffisants ...
Elboras est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/10/2007, 14h09   #6
Invité régulier
 
Inscription : juillet 2007
Messages : 61
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 61
Points : 9
Points : 9
j'ai testé le retour de ces variables avec d'autres fichiers ( <16000000) , et c'est ok, il me retourne bien les valeurs
Pour un gros fichier (environ 1 Go), les droits sur le fichier sont les memes que ci-dessus, mais là il ne me retourne pas les valeurs des variables et met directement le message :


Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 963142068 bytes) in /home/scripts/php/result.php on line 31


alors que justement comme le fichier est superieur a 16 Mo, il ne devrait pas le traiter !

Merci
pascalbout1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h14.


 
 
 
 
Partenaires

Hébergement Web