Quand tu veut dire faire le test que si un fichier est envoyé, donc faut que je test la différence soit $a != $b ?
voici le code testé
tant que $extensions_valides est different de $file_extension afficher erreur ....
est ce le bon procedé ?
car il me renvoie toujours une erreur Undefined index sur la ligne
$file_Extension = strtolower(pathinfo($_FILES['image']['name'],PATHINFO_EXTENSION));
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
<?php
$extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png' );
$file_Extension = strtolower(pathinfo($_FILES['image']['name'],PATHINFO_EXTENSION));
$folder = "img";
if(is_dir($folder)){
if($handle = opendir($folder)){
while ($extensions_valides != $file_Extension){
echo 'le fichier uploader n est pas une image';
while(($file=readdir($handle)) != false){
if($file==='.' || $file==='..' )continue;
echo '<img src="img/'.$file.'" width="150" height="150" alt="">';
}
closedir($handle);
}
}
}
?> |
J'ai également essayé ta suggestion.
Comme tu me la évoquer les valeurs appartient a un table dons j'ai utilisé le in_array
Quand il verifie les erreur si le fichier porte la bonne extension alors on ouvre le dossier et on upload
sinon on affiche une erreur.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
<html>
<head>ll</head>
<?php
if(isset($_POST['upload_img'])){
$file_name = $_FILES['image']['name'];
$file_type = $_FILES['image']['type'];
$file_size = $_FILES['image']['size'];
$file_error = $_FILES['image']['error'];
$file_tmp_name = $_FILES['image']['tmp_name'];
if($file_name){
move_uploaded_file($file_tmp_name,"img/$file_name");
}
}
?>
<body>
<form method="post" action="" enctype="multipart/form-data">
<label>upload</label><br />
<input type="file" name="image"><br /><br />
<input type="hidden" name="MAX_FILE_SIZE" value="1048576" />
<input type="submit" value="Upload Image" name="upload_img">
</form>
<?php
$extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png' );
$file_Extension = strtolower(pathinfo($_FILES['image']['name'],PATHINFO_EXTENSION));
$folder = "img";
if (in_array($file_Extension, $extensions_valides)){
if(is_dir($folder)){
if($handle = opendir($folder)){
while(($file=readdir($handle)) != false){
if($file==='.' || $file==='..' )continue;
echo '<img src="img/'.$file.'" width="150" height="150" alt="">';
}
closedir($handle);
}
}
}
else
echo "le fichier n'est pas une photo";
?> |
Mais toujours l'erreur sur index image ( ma variable image n'est pas définie )
Partager