Ajout d'une photo sur un script php-mysql

Fermé
Nostr@26 - 4 août 2009 à 21:26
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 - 5 août 2009 à 10:21
Bonjour,

j'ai fais une base de donnée et dans le script ajouter (une données supplémentaire) je voudrais que mes visiteurs puissent ajouter une photo (correspondant à la donnée) qui provient de leur PC au format jpg et/ou GIFF
cette image je souhaiterai la stocker sur un dossier de mon ftp:
Mais là sa me dépasse et je fais appel au pro.
Merci à vous
A voir également:

3 réponses

lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
4 août 2009 à 21:46
allez c'est mon soir de bonté lol !!

voila une petite fonction de mon cru qui marche a merveille,elle est toute simple,je l'ai d'ailleurs amelioré recemment
function saveImage($rep)
		 {
		//tableau des extensions
			$limitedext = array(".jpg", ".jpeg", ".png", ".bmp", ".gif", ".JPG", ".JPEG", ".PNG", ".BMP", ".GIF" );
			
			$file_type = $_FILES['imgfile']['type'];
			$file_name = $_FILES['imgfile']['name'];
			$file_size = $_FILES['imgfile']['size'];
			$file_tmp = $_FILES['imgfile']['tmp_name'];

			//Verification des extensions
			$ext = strrchr($file_name,'.');
			$ext = strtolower($ext);
			if (!in_array($ext,$limitedext))
			 {
				die("Le fichier n'est pas une image<br /><a href='index.php'>Retourner à l'accueil</a>");
			}
			//Recuperation de l'extension et du nom de fichier
			$getExt = explode ('.', $file_name);
			$file_ext = $getExt[count($getExt)-1];
			$file_name = str_replace(".".$file_ext,"",$file_name);
			$file_name = removeAccents($file_name);//fonction qui vire les accents du nom de l'image si yen a
		
			
			//Récuperation de l'image uploaded
			if($file_size) 
			{
				if($file_type == "image/pjpeg" || $file_type == "image/jpeg")
				 {
					$uploaded = imagecreatefromjpeg($file_tmp);
				 } 
					elseif($file_type == "image/x-png" || $file_type == "image/png")
					 {
						$uploaded = imagecreatefrompng($file_tmp);
					 }
						 elseif($file_type == "image/gif")
						  {
							$uploaded = imagecreatefromgif($file_tmp);
						  }
				list($width, $height) = getimagesize($file_tmp);
			} 
			//Création de l'image "normale" pour flash
			$flash = imagecreatetruecolor(600, 450);
			imagecopyresized($flash, $uploaded, 0, 0, 0, 0, 600, 450, $width, $height);
			
			//Création de la miniature
			$thumb = imagecreatetruecolor(81, 61);
			imagecopyresized($thumb, $uploaded, 0, 0, 0, 0, 81, 61, $width, $height);
			
			//enregistrement ds images
			imagejpeg($uploaded, $rep.$file_name."_b.jpg");		//originale
			imagejpeg($flash, $rep.$file_name.".jpg");			//image flash
			imagejpeg($thumb, $rep.$file_name."_th.jpg");		//miniature
			
return $file_name;
}



la fonction removeaccent utilise dans la fonction saveimage
function removeAccents($string)
{
			$string = str_replace("à", "a", $string);
			$string = str_replace("á", "a", $string);
			$string = str_replace("â", "a", $string);
			$string = str_replace("ã", "a", $string);
			$string = str_replace("ä", "a", $string);
			$string = str_replace("å", "a", $string);
			$string = str_replace("é", "e", $string);
			$string = str_replace("è", "e", $string);
			$string = str_replace("ê", "e", $string);
			$string = str_replace("ë", "e", $string);
			$string = str_replace("ì", "i", $string);
			$string = str_replace("í", "i", $string);
			$string = str_replace("î", "i", $string);
			$string = str_replace("ï", "i", $string);
			$string = str_replace("ò", "o", $string);
			$string = str_replace("ó", "o", $string);
			$string = str_replace("ô", "o", $string);
			$string = str_replace("õ", "o", $string);
			$string = str_replace("ö", "o", $string);
			$string = str_replace("ø", "o", $string);
			$string = str_replace("ù", "u", $string);
			$string = str_replace("ú", "u", $string);
			$string = str_replace("û", "u", $string);
			$string = str_replace("ü", "u", $string);
			$string = str_replace("ÿ", "y", $string);
			$string = str_replace("ñ", "n", $string);
			$string = str_replace("ç", "c", $string);
			$s = array("/", "&", "?", ",", ".", ";", ":", "!", "§", "%", "*", "µ", "¤", "$", "£", "^", "¨", ")", "(", "~", "'", '"', "{", "}", "[", "]", "|", "`", "_", "@", "°", "+", "=");
			$string = str_replace($s, "", $string);
			$string = str_replace(" ", "-", $string);
		
			$string = preg_replace("([-]+)", "-", $string);
			$string = preg_replace("([-]$)", "", $string);
		
return $string;
}



et cette fonction tu l'appelle dans ta page comme ça

//$lien c'est si  il existe une image
	if(isset($lien) && !empty($lien))
	{
			$rep = "ton repertoire ou tu veut socker l'image";
			$file_name = saveImage($rep);
			$f = $rep.$file_name;
			
	}
	


et voila
1
Et ben là je suis calmé !!
en grand merci à toi et ta bonté (héhé)
0
Une autre petite question...
ton script marche aussi pour l'ajout de fichier .doc et .pdf
sans qu'il y est de lien avec une photo ?
merci
0
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
5 août 2009 à 10:21
non pas ce script parceque j'utilise les fonction de la librairie gd de php pour gerer les images

pour des fichiers il faut utiliser les fonctions move_uploaded_file

http://www.manuelphp.com/php/function.move-uploaded-file.php

mais c'est le meme principe
0