problem type: FILE

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : problem type: FILE

par 2501gigi » 28 janv. 2007, 18:53

BOn je viend de resoudre mon probleme en faite a la place de la boucle switch ,j'ai mis if et elseif et c'est nickel.

par 2501gigi » 28 janv. 2007, 18:44

Bon voila j'ai change mon code pour utiliser une boucle switch.

Le cas 0 ne marche pas.
Le cas 1 marche.
Le cas 2 ne marche pas.
Le cas 3 ne marche pas.
Et le default ne marche pas j'ai l'erreur:

Code : Tout sélectionner

Notice: Undefined index: IDmodifcoll in c:\program files\easyphp1-7\www\sitedebase\admin\notescolleclego.php on line 455 Erreur de syntaxe près de '' à la ligne 1
Pour le cas 0,2,3,default il execute le code comme si il n'y avait pas de if et de break.

ATTENTION C'EST LONG.
<?php
switch (($actionajouiml=="Ajouter") && ($modifcoll == 11)) 
{//1
	  case 0 :
	  //Si fichier image 1 et 2 sont remplis
	  if((isset($_FILES['fichier_choisi']['name'])) and (!empty($_FILES['fichier_choisi']['name'])) and (isset($_FILES['fichier_choisi2']['name'])) and (!empty($_FILES['fichier_choisi2']['name'])))
	  {//2
	    //parametres 
        unset($erreur); 
        $extensions_ok = array('png', 'gif', 'jpg', 'jpeg', 'JPG','JPEG','bmp','BMP'); 
        $taille_max = 1000000;
		$taille_max2 = 20000; 
        $dest_dossier = 'photos\Pcollections\Plego\Legonormales'; 
        $dest_dossier2 = 'photos\Pcollections\Plego\Legominiature'; 
		$size = getimagesize("".$_FILES['fichier_choisi']['tmp_name']);
		$size2 = getimagesize("".$_FILES['fichier_choisi2']['tmp_name']); 
        $height = $size[1]; 
        $width = $size[0];
		$height2 = $size2[1]; 
        $width2 = $size2[0];  
        $taille = 100000;
		$taille2 = 20000; 

        // On verrifie les extensions 
         if(( !in_array( substr(strrchr($_FILES['fichier_choisi']['name'], '.'), 1), $extensions_ok )) && ( !in_array( substr(strrchr($_FILES['fichier_choisi2']['name'], '.'), 2), $extensions_ok ) ))
           { 
           echo("Le fichier choisi n'est pas une image");
           } 
        // On verrifie la taille du fichier 
         elseif(( file_exists($_FILES['fichier_choisi']['name']) and $_FILES['fichier_choisi']['size'] > $taille_max) && ( file_exists($_FILES['fichier_choisi2']['name']) and $_FILES['fichier_choisi2']['size'] > $taille_max2))
           { 
           echo("Le fichier choisi est trop grand");
           } 
        elseif(( file_exists($_FILES['fichier_choisi']['name']) and $height > $taille && $width > $taille) && ( file_exists($_FILES['fichier_choisi2']['name']) and $height2 > $taille2 && $width2 > $taille2)) 
           { 
           echo("Le fichier choisi est trop grand");
           } 

        // Si ficher = bonne taille & bonne extension 
             if(!isset($erreur)) 
             {//3 

            $dest_fichier = basename($_FILES['fichier_choisi']['name']);
			$dest_fichier2 = basename($_FILES['fichier_choisi2']['name']); 
            //formatage nom fichier 
            //enlever les accents 
            $dest_fichier = strtr($dest_fichier, 
            'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
            'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); 
            // remplacer les caracteres autres que lettres, chiffres et point par _ 
            $dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier); 
            // On upload le fichier
			$dest_fichier2 = strtr($dest_fichier2, 
            'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
            'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); 
            // remplacer les caracteres autres que lettres, chiffres et point par _ 
            $dest_fichier2 = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier2); 
            // On upload le fichier
			
			 
            move_uploaded_file($_FILES['fichier_choisi']['tmp_name'], $dest_dossier .'/'. $_FILES['fichier_choisi']['name']);
			move_uploaded_file($_FILES['fichier_choisi2']['tmp_name'], $dest_dossier2 .'/'. $_FILES['fichier_choisi2']['name']); 
			  
			  
			   if ($BoxD == "DISPOV") 
			   {
			   $BoxVal = '<br><span class="style3">Objet disponible à l\'échange ou à la vente.Pour plus infos</span> <a href="mailto:[email protected]">Contactez-moi</a>.'; 
               $insertLienimgs = "UPDATE tcolllego SET IMLego ='". $_FILES['fichier_choisi']['name']."',PIMLego='". $_FILES['fichier_choisi2']['name']."',TITIMlego='".$TitreImagLego."', BOXl='". mysql_real_escape_string($BoxVal)."' WHERE IDil= " . $_SESSION['IDmodifcoll'] ;
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
	           session_unset();
			   }
			   else
			   {
			   $insertLienimgs = "UPDATE tcolllego SET IMLego ='". $_FILES['fichier_choisi']['name']."',PIMLego='". $_FILES['fichier_choisi2']['name']."',TITIMlego='".$TitreImagLego."' WHERE IDil= " . $_SESSION['IDmodifcoll'] ;
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
		       session_unset();
			   }
			  
	       }//3
	  }//2
	  break;   
	  case 1:
	  //Si fichier 1 et rempli mais  2 vide
      if((isset($_FILES['fichier_choisi']['name'])) and (empty($_FILES['fichier_choisi']['name'])) and (isset($_FILES['fichier_choisi2']['name'])) and (!empty($_FILES['fichier_choisi2']['name'])))
	  {//2
	    //parametres 
        unset($erreur); 
        $extensions_ok = array('png', 'gif', 'jpg', 'jpeg', 'JPG','JPEG','bmp','BMP'); 
        
		$taille_max2 = 20000; 
        
        $dest_dossier2 = 'photos\Pcollections\Plego\Legominiature'; 
		
		$size2 = getimagesize("".$_FILES['fichier_choisi2']['tmp_name']); 
        
		$height2 = $size2[1]; 
        $width2 = $size2[0];  
        
		$taille2 = 20000; 

        // On verrifie les extensions 
         if(( !in_array( substr(strrchr($_FILES['fichier_choisi2']['name'], '.'), 2), $extensions_ok ) ))
           { 
           echo("Le fichier choisi n'est pas une image");
           } 
        // On verrifie la taille du fichier 
         elseif(( file_exists($_FILES['fichier_choisi2']['name']) and $_FILES['fichier_choisi2']['size'] > $taille_max2))
           { 
           echo("Le fichier choisi est trop grand");
           } 
        elseif(( file_exists($_FILES['fichier_choisi2']['name']) and $height2 > $taille2 && $width2 > $taille2)) 
           { 
           echo("Le fichier choisi est trop grand");
           } 

        // Si ficher = bonne taille & bonne extension 
             if(!isset($erreur)) 
             {//3 

            
			$dest_fichier2 = basename($_FILES['fichier_choisi2']['name']); 
            
			$dest_fichier2 = strtr($dest_fichier2, 
            'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
            'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); 
            // remplacer les caracteres autres que lettres, chiffres et point par _ 
            $dest_fichier2 = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier2); 
            // On upload le fichier
			
			 
          
			move_uploaded_file($_FILES['fichier_choisi2']['tmp_name'], $dest_dossier2 .'/'. $_FILES['fichier_choisi2']['name']); 
			  
			  
			   if ($BoxD == "DISPOV") 
			   {
			   $BoxVal = '<br><span class="style3">Objet disponible à l\'échange ou à la vente.Pour plus infos</span> <a href="mailto:[email protected]">Contactez-moi</a>.'; 
               $insertLienimgs = "UPDATE tcolllego SET PIMLego='". $_FILES['fichier_choisi2']['name']."',TITIMlego='".$TitreImagLego."', BOXl='". mysql_real_escape_string($BoxVal)."' WHERE IDil= " . $_SESSION['IDmodifcoll'] ;
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
	           session_unset();
			   }
			   else
			   {
			   $insertLienimgs = "UPDATE tcolllego SET PIMLego='". $_FILES['fichier_choisi2']['name']."',TITIMlego='".$TitreImagLego."' WHERE IDil= " . $_SESSION['IDmodifcoll'] ;
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
		       session_unset();
			   }
			  
	       }//3
	  }//2
	  break;
	  case 2 :
	  //si fichier 1 vide et 2 rempli
	  if((isset($_FILES['fichier_choisi']['name'])) and (!empty($_FILES['fichier_choisi']['name'])) and (isset($_FILES['fichier_choisi2']['name'])) and (empty($_FILES['fichier_choisi2']['name'])))
	  {//2
	    //parametres 
        unset($erreur); 
        $extensions_ok = array('png', 'gif', 'jpg', 'jpeg', 'JPG','JPEG','bmp','BMP'); 
        $taille_max = 1000000;
		
        $dest_dossier = 'photos\Pcollections\Plego\Legonormales'; 
        
		$size = getimagesize("".$_FILES['fichier_choisi']['tmp_name']);
		
        $height = $size[1]; 
        $width = $size[0];
		 
        $taille = 100000;
		

        // On verrifie les extensions 
         if(( !in_array( substr(strrchr($_FILES['fichier_choisi']['name'], '.'), 1), $extensions_ok )) )
           { 
           echo("Le fichier choisi n'est pas une image");
           } 
        // On verrifie la taille du fichier 
         elseif(( file_exists($_FILES['fichier_choisi']['name']) and $_FILES['fichier_choisi']['size'] > $taille_max) )
           { 
           echo("Le fichier choisi est trop grand");
           } 
        elseif(( file_exists($_FILES['fichier_choisi']['name']) and $height > $taille && $width > $taille)) 
           { 
           echo("Le fichier choisi est trop grand");
           } 

        // Si ficher = bonne taille & bonne extension 
             if(!isset($erreur)) 
             {//3 

            $dest_fichier = basename($_FILES['fichier_choisi']['name']);
			 
            //formatage nom fichier 
            //enlever les accents 
            $dest_fichier = strtr($dest_fichier, 
            'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
            'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); 
            // remplacer les caracteres autres que lettres, chiffres et point par _ 
            $dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier); 
            // On upload le fichier
			
			
			 
            move_uploaded_file($_FILES['fichier_choisi']['tmp_name'], $dest_dossier .'/'. $_FILES['fichier_choisi']['name']);
			
			  
			  
			   if ($BoxD == "DISPOV") 
			   {
			   $BoxVal = '<br><span class="style3">Objet disponible à l\'échange ou à la vente.Pour plus infos</span> <a href="mailto:[email protected]">Contactez-moi</a>.'; 
               $insertLienimgs = "UPDATE tcolllego SET IMLego ='". $_FILES['fichier_choisi']['name']."',TITIMlego='".$TitreImagLego."', BOXl='". mysql_real_escape_string($BoxVal)."' WHERE IDil= " . $_SESSION['IDmodifcoll'] ;
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
	           session_unset();
			   }
			   else
			   {
			   $insertLienimgs = "UPDATE tcolllego SET IMLego ='". $_FILES['fichier_choisi']['name']."',TITIMlego='".$TitreImagLego."' WHERE IDil= " . $_SESSION['IDmodifcoll'] ;
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
		       session_unset();
			   }
			  
	       }//3
	  }//2
	  break;
	  case 3:
	  //si le fichier 1 et 2 vide
	  if((isset($_FILES['fichier_choisi']['name'])) and (empty($_FILES['fichier_choisi']['name'])) and (isset($_FILES['fichier_choisi2']['name'])) and (empty($_FILES['fichier_choisi2']['name'])))
      {
	  if ($BoxD == "DISPOV") 
			   {
			   $BoxVal = '<br><span class="style3">Objet disponible à l\'échange ou à la vente.Pour plus infos</span> <a href="mailto:[email protected]">Contactez-moi</a>.'; 
               $insertLienimgs = "UPDATE tcolllego SET TITIMlego='".$TitreImagLego."', BOXl='". mysql_real_escape_string($BoxVal)."' WHERE IDil= " . $_SESSION['IDmodifcoll'] ;
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
	           session_unset();
			   }
			   else
			   {
			   $insertLienimgs = "UPDATE tcolllego SET TITIMlego='".$TitreImagLego."' WHERE IDil= " . $_SESSION['IDmodifcoll'] ;
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
		       session_unset();
			   }
      }
	  break;
default :   		  
if (($actionajouiml=="Ajouter") && ($modifcoll == 0))
{//5

     if(isset($_FILES['fichier_choisi'])) 
     {//6 
        //parametres 
        unset($erreur); 
        $extensions_ok = array('png', 'gif', 'jpg', 'jpeg', 'JPG','JPEG','bmp','BMP'); 
        $taille_max = 1000000;
		$taille_max2 = 20000; 
        $dest_dossier = 'photos\Pcollections\Plego\Legonormales'; 
        $dest_dossier2 = 'photos\Pcollections\Plego\Legominiature'; 
		$size = getimagesize("".$_FILES['fichier_choisi']['tmp_name']);
		$size2 = getimagesize("".$_FILES['fichier_choisi2']['tmp_name']); 
        $height = $size[1]; 
        $width = $size[0];
		$height2 = $size2[1]; 
        $width2 = $size2[0];  
        $taille = 100000;
		$taille2 = 20000;

        // On verrifie les extensions 
         if(( !in_array( substr(strrchr($_FILES['fichier_choisi']['name'], '.'), 1), $extensions_ok ) ) && ( !in_array( substr(strrchr($_FILES['fichier_choisi2']['name'], '.'), 2), $extensions_ok ) ))
           { 
           echo("Le fichier choisi n'est pas une image");
           } 
        // On verrifie la taille du fichier 
         elseif(( file_exists($_FILES['fichier_choisi']['name']) and $_FILES['fichier_choisi']['size'] > $taille_max) && ( file_exists($_FILES['fichier_choisi2']['name']) and $_FILES['fichier_choisi2']['size'] > $taille_max2))
           { 
           echo("Le fichier choisi est trop grand");
           } 
        elseif(( file_exists($_FILES['fichier_choisi']['name']) and $height > $taille && $width > $taille) && ( file_exists($_FILES['fichier_choisi2']['name']) and $height2 > $taille2 && $width2 > $taille2)) 
           { 
           echo("Le fichier choisi est trop grand");
           } 

        // Si ficher = bonne taille & bonne extension 
             if(!isset($erreur)) 
             {//7 

            $dest_fichier = basename($_FILES['fichier_choisi']['name']);
			$dest_fichier2 = basename($_FILES['fichier_choisi2']['name']); 
            //formatage nom fichier 
            //enlever les accents 
            $dest_fichier = strtr($dest_fichier, 
            'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
            'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); 
            // remplacer les caracteres autres que lettres, chiffres et point par _ 
            $dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier); 
            // On upload le fichier
			$dest_fichier2 = strtr($dest_fichier2, 
            'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
            'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); 
            // remplacer les caracteres autres que lettres, chiffres et point par _ 
            $dest_fichier2 = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier2); 
            // On upload le fichier
			
			 
               move_uploaded_file($_FILES['fichier_choisi']['tmp_name'], $dest_dossier .'/'. $_FILES['fichier_choisi']['name']);
			   move_uploaded_file($_FILES['fichier_choisi2']['tmp_name'], $dest_dossier2 .'/'. $_FILES['fichier_choisi2']['name']);
          
			   
			   if ($BoxD == "DISPOV") 
			   {
			   $BoxVal = '<br><span class="style3">Objet disponible à l\'échange ou à la vente.Pour plus infos</span> <a href="mailto:[email protected]">Contactez-moi</a>.'; 
               $insertLienimgs = "INSERT INTO tcolllego (IMLego,PIMLego,TITIMlego, BOXl) ". 
                                 "VALUES ('". $_FILES['fichier_choisi']['name']."','". $_FILES['fichier_choisi2']['name']."' ,'$TitreImagLego','". mysql_real_escape_string($BoxVal)."')"; 
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
	           session_unset();
			   }
			   else
			   {
			   $insertLienimgs = "INSERT INTO tcolllego (IMLego,PIMLego,TITIMlego) VALUES ('". $_FILES['fichier_choisi']['name']."','". $_FILES['fichier_choisi2']['name']."' ,'$TitreImagLego')";
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
		       session_unset();
			   }
		     }//7 
     }//6
	 else
	 {
	 echo("Vous n'avez pas choisit de fichier!!<br>") ; 
	 }
}//5
}//1
?>
Merci si vous pouvez m'aider.

par 2501gigi » 27 janv. 2007, 12:06

Bon voila j'ai fait se que tu ma dis ryle mais sa ne fonctionne pas sa me fait toujour pareil.
if ((isset($_FILES[Fichier_choisi])) and  (!empty($_FILES[Fichier_choisi])))
Comme j'ai deux fichier image j'ai rajouter sa au cas ou :



if ((isset($_FILES[Fichier_choisi])) and  (!empty($_FILES[Fichier_choisi])) 
and (isset($_FILES[Fichier_choisi]2)) and  (!empty($_FILES
[Fichier_choisi2])))
Désolé pour cette presentation mais sa ne s'afficher pas correctement sinon

Mais fonctionne toujours pas

par Ryle » 25 janv. 2007, 22:21

La négation en développement en général (et en php en particulier :)) est généralement exprimé par un point d'exclamation :)
($a && $b) // $a ET $b
!($a && $b) // Non ($a ET $b) cad. Non $a ET Non $b

if( isSet($variable) ) // si $variable est définie
if( !isSet($variable) ) // si $variable n'est pas définie
Je te laisse deviner pour Non vide :)

par 2501gigi » 25 janv. 2007, 19:42

Salut pour definir si la variable et definie c'est ca :
if(isset($_FILES['fichier_choisi'])) 
Mais par contre je sais faire pour si elle est vide :
if(empty($_FILES['fichier_choisi'])) 
Mais pas non vide.

par Ryle » 25 janv. 2007, 17:00

A vérifier, mais je crois que les input de type files sont automatiquement ajoutés à l'objet $_FILES, même si ceux-ci sont vides (comme un input text sera défini dans $_POST même s'il est vide)

Il te faut donc tester non seulement si la variable est définie mais également non vide :)

par 2501gigi » 25 janv. 2007, 14:42

J'avais oublier de dire qu'il execute le code comme si il y avait des image enfin sa je l'avais dis mais en revanche se que je n'est pas dis c'est qu'il me met "votre fichier n'est pas un fichier image valide" forcement puisque il n'y a pas d'image, pourtant mon code dis bien que si je n'est pas rempli le type file de pas en tenir compte.

Voila si vous pourriez m'aider.

par 2501gigi » 24 janv. 2007, 20:28

Bon voila mon code, j'arrive a update ma base de donnée quand je change le photos mais pas quand je change juste le titre et que je laisse les type file vide.

Ce qui ce produit c'est qu'il execute le code comme si je m'etais une image.
<?php
if (($actionajouiml=="Ajouter") && ($modifcoll == 11)) 
{//1
	  
	  if(isset($_FILES['fichier_choisi']))
	  {//2
	    //parametres 
        unset($erreur); 
        $extensions_ok = array('png', 'gif', 'jpg', 'jpeg', 'JPG','JPEG','bmp','BMP'); 
        $taille_max = 1000000;
		$taille_max2 = 20000; 
        $dest_dossier = 'photos\Pcollections\Plego\Legonormales'; 
        $dest_dossier2 = 'photos\Pcollections\Plego\Legominiature'; 
		$size = getimagesize("".$_FILES['fichier_choisi']['tmp_name']);
		$size2 = getimagesize("".$_FILES['fichier_choisi2']['tmp_name']); 
        $height = $size[1]; 
        $width = $size[0];
		$height2 = $size2[1]; 
        $width2 = $size2[0];  
        $taille = 100000;
		$taille2 = 20000; 

        // On verrifie les extensions 
         if(( !in_array( substr(strrchr($_FILES['fichier_choisi']['name'], '.'), 1), $extensions_ok )) && ( !in_array( substr(strrchr($_FILES['fichier_choisi2']['name'], '.'), 2), $extensions_ok ) ))
           { 
           echo("Le fichier choisi n'est pas une image");
           } 
        // On verrifie la taille du fichier 
         elseif(( file_exists($_FILES['fichier_choisi']['name']) and $_FILES['fichier_choisi']['size'] > $taille_max) && ( file_exists($_FILES['fichier_choisi2']['name']) and $_FILES['fichier_choisi2']['size'] > $taille_max2))
           { 
           echo("Le fichier choisi est trop grand");
           } 
        elseif(( file_exists($_FILES['fichier_choisi']['name']) and $height > $taille && $width > $taille) && ( file_exists($_FILES['fichier_choisi2']['name']) and $height2 > $taille2 && $width2 > $taille2)) 
           { 
           echo("Le fichier choisi est trop grand");
           } 

        // Si ficher = bonne taille & bonne extension 
             if(!isset($erreur)) 
             {//3 

            $dest_fichier = basename($_FILES['fichier_choisi']['name']);
			$dest_fichier2 = basename($_FILES['fichier_choisi2']['name']); 
            //formatage nom fichier 
            //enlever les accents 
            $dest_fichier = strtr($dest_fichier, 
            'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
            'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); 
            // remplacer les caracteres autres que lettres, chiffres et point par _ 
            $dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier); 
            // On upload le fichier
			$dest_fichier2 = strtr($dest_fichier2, 
            'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
            'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); 
            // remplacer les caracteres autres que lettres, chiffres et point par _ 
            $dest_fichier2 = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier2); 
            // On upload le fichier
			
			 
            move_uploaded_file($_FILES['fichier_choisi']['tmp_name'], $dest_dossier .'/'. $_FILES['fichier_choisi']['name']);
			move_uploaded_file($_FILES['fichier_choisi2']['tmp_name'], $dest_dossier2 .'/'. $_FILES['fichier_choisi2']['name']); 
			  
			  
			   if ($BoxD == "DISPOV") 
			   {
			   $BoxVal = '<br><span class="style3">Objet disponible à l\'échange ou à la vente.Pour plus infos</span> <a href="mailto:[email protected]">Contactez-moi</a>.'; 
               $insertLienimgs = "UPDATE tcolllego SET IMLego ='". $_FILES['fichier_choisi']['name']."',PIMLego='". $_FILES['fichier_choisi2']['name']."',TITIMlego='".$TitreImagLego."', BOXl='". mysql_real_escape_string($BoxVal)."' WHERE IDil= " . $_SESSION['IDmodifcoll'] ;
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
	           session_unset();
			   }
			   else
			   {
			   $insertLienimgs = "UPDATE tcolllego SET IMLego ='". $_FILES['fichier_choisi']['name']."',PIMLego='". $_FILES['fichier_choisi2']['name']."',TITIMlego='".$TitreImagLego."' WHERE IDil= " . $_SESSION['IDmodifcoll'] ;
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
		       session_unset();
			   }
			  
	       }//3
	  }//2   
	  else
      {//4
	           if ($BoxD == "DISPOV") 
			   {
			   $BoxVal = '<br><span class="style3">Objet disponible à l\'échange ou à la vente.Pour plus infos</span> <a href="mailto:[email protected]">Contactez-moi</a>.'; 
               $insertLienimgs = "UPDATE tcolllego SET TITIMlego='".$TitreImagLego."', BOXl='". mysql_real_escape_string($BoxVal)."' WHERE IDil= " . $_SESSION['IDmodifcoll'] ;
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
	           session_unset();
			   }
			   else
			   {
			   $insertLienimgs = "UPDATE tcolllego SET TITIMlego='".$TitreImagLego."' WHERE IDil= " . $_SESSION['IDmodifcoll'] ;
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
		       session_unset();
			   } 
        
       }//4
}//1   		  
elseif (($actionajouiml=="Ajouter") && ($modifcoll == 0))
{//5

     if(isset($_FILES['fichier_choisi'])) 
     {//6 
        //parametres 
        unset($erreur); 
        $extensions_ok = array('png', 'gif', 'jpg', 'jpeg', 'JPG','JPEG','bmp','BMP'); 
        $taille_max = 1000000;
		$taille_max2 = 20000; 
        $dest_dossier = 'photos\Pcollections\Plego\Legonormales'; 
        $dest_dossier2 = 'photos\Pcollections\Plego\Legominiature'; 
		$size = getimagesize("".$_FILES['fichier_choisi']['tmp_name']);
		$size2 = getimagesize("".$_FILES['fichier_choisi2']['tmp_name']); 
        $height = $size[1]; 
        $width = $size[0];
		$height2 = $size2[1]; 
        $width2 = $size2[0];  
        $taille = 100000;
		$taille2 = 20000;

        // On verrifie les extensions 
         if(( !in_array( substr(strrchr($_FILES['fichier_choisi']['name'], '.'), 1), $extensions_ok ) ) && ( !in_array( substr(strrchr($_FILES['fichier_choisi2']['name'], '.'), 2), $extensions_ok ) ))
           { 
           echo("Le fichier choisi n'est pas une image");
           } 
        // On verrifie la taille du fichier 
         elseif(( file_exists($_FILES['fichier_choisi']['name']) and $_FILES['fichier_choisi']['size'] > $taille_max) && ( file_exists($_FILES['fichier_choisi2']['name']) and $_FILES['fichier_choisi2']['size'] > $taille_max2))
           { 
           echo("Le fichier choisi est trop grand");
           } 
        elseif(( file_exists($_FILES['fichier_choisi']['name']) and $height > $taille && $width > $taille) && ( file_exists($_FILES['fichier_choisi2']['name']) and $height2 > $taille2 && $width2 > $taille2)) 
           { 
           echo("Le fichier choisi est trop grand");
           } 

        // Si ficher = bonne taille & bonne extension 
             if(!isset($erreur)) 
             {//7 

            $dest_fichier = basename($_FILES['fichier_choisi']['name']);
			$dest_fichier2 = basename($_FILES['fichier_choisi2']['name']); 
            //formatage nom fichier 
            //enlever les accents 
            $dest_fichier = strtr($dest_fichier, 
            'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
            'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); 
            // remplacer les caracteres autres que lettres, chiffres et point par _ 
            $dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier); 
            // On upload le fichier
			$dest_fichier2 = strtr($dest_fichier2, 
            'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
            'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); 
            // remplacer les caracteres autres que lettres, chiffres et point par _ 
            $dest_fichier2 = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier2); 
            // On upload le fichier
			
			 
               move_uploaded_file($_FILES['fichier_choisi']['tmp_name'], $dest_dossier .'/'. $_FILES['fichier_choisi']['name']);
			   move_uploaded_file($_FILES['fichier_choisi2']['tmp_name'], $dest_dossier2 .'/'. $_FILES['fichier_choisi2']['name']);
          
			   
			   if ($BoxD == "DISPOV") 
			   {
			   $BoxVal = '<br><span class="style3">Objet disponible à l\'échange ou à la vente.Pour plus infos</span> <a href="mailto:[email protected]">Contactez-moi</a>.'; 
               $insertLienimgs = "INSERT INTO tcolllego (IMLego,PIMLego,TITIMlego, BOXl) ". 
                                 "VALUES ('". $_FILES['fichier_choisi']['name']."','". $_FILES['fichier_choisi2']['name']."' ,'$TitreImagLego','". mysql_real_escape_string($BoxVal)."')"; 
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
	           session_unset();
			   }
			   else
			   {
			   $insertLienimgs = "INSERT INTO tcolllego (IMLego,PIMLego,TITIMlego) VALUES ('". $_FILES['fichier_choisi']['name']."','". $_FILES['fichier_choisi2']['name']."' ,'$TitreImagLego')";
               $Result6 = mysql_query($insertLienimgs, $Debaseconnect) or die(mysql_error()); 
		       session_unset();
			   }
		     }//7 
     }//6
	 else
	 {
	 echo("Vous n'avez pas choisit de fichier!!<br>") ; 
	 }
}//5
?>
Et j'ai chercher mais pas trouvé.

par 2501gigi » 24 janv. 2007, 15:30

Comme les grands esprit se rencontre car en te repondant au dessus je me suis dis pourquoi pas faire comme sa.

En tout cas merci je fais sa et je reviend vous dire se qu'il en est.

par Ryle » 24 janv. 2007, 14:17

Vi tout à fait :)

En fait dans ton cas, il suffit de mettre un champ file dont tu laisses la valeur vide (vu que de toute façon, tu peux pas la changer ;)) et tu testes la valeur de celui-ci lors de la mise à jour : S'il est vide, c'est qu'aucune photo n'est envoyée, donc on conserve l'existante et on change juste le titre. S'il est renseigné, tu enregistres la nouvelle image et tu mets à jour ta base :)

par 2501gigi » 24 janv. 2007, 14:06

Elle est obligatoire.

Par exemple:

je rentre dans mon form :

En titre : Ma maison en campagne.

Puis la photo : maisonenville.jpg

Je met valider et sa me la mais en bd.

Mais OUPS j'ai fais une boulette j'ai mis le mauvais titre.
Donc bout modif, je change le titre mais je garde la photo.
Donc la moi j'ai mis un champ text avec en value, le nom de la photo pour le recap du nom de la photo.
Sa je serais faire.
MAIS si je change le titre mais que je me dis tient je vais changer la photo aussi et la probleme puisque je peut plus la changer car j'ai un champ text et plus un champ file.

Vous comprennez ou pas.

par Ryle » 24 janv. 2007, 13:54

Ben pas de case à cocher alors ;)

Tout dépend de l'usage que tu fais de ton image.
Si elle est obligatoire, la seule façon de la supprimer doit effectivement être de supprimer l'ensemble des infos.
Si elle est optionnelle, il faut pouvoir la modifier ou la retirer sans nécessairement supprimer le reste, d'où la case qui permet de dire "je retire juste l'image, j'en ai pas d'autre à mettre à la place, mais je veux pas perdre tout ce qui a déjà était fait" :)

Et dans ce cas là, mon traitement derrière consiste juste en un unlink() du fichier et un update du champ dans ma base :)

par 2501gigi » 24 janv. 2007, 13:42

Merci je vais voir ca .

Mon 2 ieme probleme et je pense du au premier.

Car les infos sont bien envoyer.
Je ressoud le premier et on verra par la suite.

Mais j'ai une question sur ta solution.

Car moi j'ai un bouton pour tout supprimer l'image ,le titre etc..
Mais toi apparament c'est juste pour supprimer l'image.
Car moi l'un ne va pas sans l'autre.
Si on supprime l'image on supprime tout et c'est voulus.
Mais quand on appuis sur le bouton modif c'est pour changer soit le titre ,soit l'image ,soit les deux.

Car si je mais une case a cocher juste pour l'image mais qu'on garde le titre sa me rentrera dans ma bd que le titre .
Et moi je ne veut pas sa.

Re: problem type: FILE

par iclo » 24 janv. 2007, 12:33

Personnellement, une fois que j'ai une image uploadé, je propose un aperçu avec une case à cocher pour la supprimer et je garde le champ file vide pour permettre de l'écraser. Si aucune valeur n'est passée, je ne fais rien, si j'ai un nouveau fichier, j'écrase, et si la case est cochée, je supprime juste :)
Je fais pareil, avantage: si on ne change pas de photos, on évite de devoir la reploader pour rien.

Re: problem type: FILE

par Ryle » 24 janv. 2007, 12:17

Voila j'ai un gros soucis avec les type: file
Je voudrais mettre un valu mais sa ne marche pas.
C'est normal. Par mesure de sécurité, tu ne peux pas prérenseigné les champs de type file, sinon tu pourrais mettre n'importe quelle valeur et déclencher la validation du formulaire en javascript, et ainsi récupérer des fichiers sur le disque de l'utilisateur à son insue (faut connaitre leurs noms certes, mais certains fichiers systemes sont présents partout :))

Personnellement, une fois que j'ai une image uploadé, je propose un aperçu avec une case à cocher pour la supprimer et je garde le champ file vide pour permettre de l'écraser. Si aucune valeur n'est passée, je ne fais rien, si j'ai un nouveau fichier, j'écrase, et si la case est cochée, je supprime juste :)
Mon deuxieme c'est que je n'arrive pas a UPDATE ma bd.
C'est à dire ? qu'est ce qui se passe ? erreur sql ? erreur php ? est-ce que tu rentre dans le else ? as-tu testé les valeurs pour vérifier par ou le script passait ?