J'ai un script qu'un collègue m'a fait pour uploider une image et la redimenssionner. Ce script fonctionne à merveille.
L'image uploidéé est supprimée et la nouvelle est bien stockée dans le dossier de déstination avec les dimenssion voulue.
Par contre, j'ai essayé de l'enregistrer dans la bdd et je n'y arrive pas.
Aussi je désire pouvoir suprimer l'image du dossier si le chemin est supprimé de la bdd.
J'ai fait des test inimaginagle, fouiner dans les forum et aussi trouver des tutos mais là je sèche....
Pourriez vous m'aider!!!
Ci dessous vous trouverez le script :
Code : Tout sélectionner
<html>
<head>
<title>Upload des images</title>
</head>
<body>
Veuillez sélectionner l'image que vous voulez envoyez sur notre serveur
<br>
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="fichier" value=""\>
<br>
<input type="submit" name="" value="Envoyer"\>
</form>
</body>
</html>
<?PHP
if(extension_correct($fichier_name)){
upload($fichier,$fichier_name);
}
else{
echo "votre fichier n'a pas été pris en charge car ce n'est pas une image";
}
function extension_correct($fichier){
//liste des formats corrects
$liste=array('jpg','jpeg','png','gif','JPG','JPEG','PNG','GIF');
$extension=extensionFichier($fichier);
for($i=0;$i<sizeOf($liste) && $b==0;$i++)
if($extension==$liste[$i])$b=1;
return $b;
}
function extensionFichier($fichier){
//Récupération d el'extension du fichier
$ext=explode(".",$fichier);
return $ext[sizeOf($ext)-1];
}
function nomCorrect($nom){
if(file_exists('logo\\'.$nom.'.png'))$nom=time().$nom;
if(file_exists('img\\'.$nom.'.png'))$nom=time().$nom;
return $nom;
}
function upload($fichier,$nom){
//On vérifie qu'un fichier ne porte pas déjà ce nom sinon on modifiera son nom
$nom=nomCorrect($nom);
if (copy($fichier,$nom)){
echo $nom." envoyé et stocké sur notre serveur.";
//Création d'un logo
redimensionne($nom,350,150,'logo\\'.$nom.'.png');
//Création de l'image
redimensionne($nom,250,250,'img\\'.$nom.'.png');
//Suppression du fichier temporaire
unlink($nom);
}
else{
echo "Envoi du fichier échoué";
}
}
function redimensionne($fichier,$width,$height,$dest){
list($w,$h)=getimagesize($fichier);
list($w,$h,$width,$height)=calcResolutionOptimale($w,$h,$width,$height);
$buffer=imagecreate($width,$height);
$extension=extensionFichier($fichier);
switch ($extension){
case "JPG":
case "jpg":
$image=imagecreatefromjpeg($fichier);
break;
case "GIF":
case "gif":
$image=imagecreatefromgif($fichier);
break;
case "PNG":
case "png":
$image=imagecreatefrompng($fichier);
break;
}
imagecopyresized($buffer,$image,0,0,0,0,$width,$height,$w,$h);
imagepng($buffer,$dest);
}
function calcResolutionOptimale($w,$h,$width,$height){
return array($w,$h,$width,$height);
}
?>