Ajout d'une photo sur un script php-mysql

Nostr@26 -  
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   -
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
Configuration: Windows XP
Firefox 3.0.12

3 réponses

  1. lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
     
    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
    1. Nostr@26
       
      Et ben là je suis calmé !!
      en grand merci à toi et ta bonté (héhé)
      0
  2. Nostr@26
     
    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
  3. lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
     
    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