Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Aide | Shop Recherche
1319 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  champs file parametre mais pas obligatoire

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

champs file parametre mais pas obligatoire

n°2275661
fabdu68200
Posté le 14-02-2016 à 19:22:56  profilanswer
 

Bonjour à tous,
 
Il y a quelque temps j ai créée ce code pour vérifier que la photo ne dépasse pas une certaine taille et qu elle est tel ou tel format, mais maintenant je voudrais faire en sorte que ce champs ne sois pas obligatoire, mais la je bloque un peu, parce que je n'arrive pas à faire en sorte que le champs sois contrôler mais pas obligatoire.
 
Est ce que quelqu un pourrait m'aiguiller?
 
Merci
 

Code :
  1. public function setFile1(array $File1) {
  2.                 if($this->getError() != '') {
  3.     return;
  4.   }
  5.       $this->File1 = $File1;
  6. }
  7. public function uploadFile1() {
  8.   if($this->getError() != '') {
  9.     return;
  10.   }
  11.   if ($this->File1['error'] != '') {
  12.     $this->setError('Veuillez choisir votre photo <br/> Erreur chargement 1er fichier: '.$this->File1['error']);
  13.     return;
  14.   }
  15.   $dossier = 'resultat/';
  16.   $fichier = basename($this->File1['name']);
  17.   $taille_maxi = 5000000;
  18.   $taille = filesize($this->File1['tmp_name']);
  19.   //$extensions = array('.png', '.gif', '.jpg', '.jpeg', '.JPG', '.JPEG', '.bmp') ;
  20.   $arr['.gif']  ='image/gif';
  21.   $arr['.jpg']  ='image/jpeg';
  22.   $arr['.jpeg'] ='image/jpeg';
  23.   $arr['.JPG']  ='image/jpeg';
  24.   $arr['.JPEG'] ='image/jpeg';
  25.   $arr['.png'] ='image/png';
  26.   $arr['.bmp'] ='image/bmp';
  27.   $extension = strrchr($this->File1['name'],'.');
  28.   //Si l'extension n'est pas dans le tableau
  29.   if(!isset($arr[$extension]))
  30.   {
  31.     $this->setError('La photo doit être de type:<br/>-png<br/>-gif<br/>-jpg<br/>-jpeg<br/>-bmp');
  32.     return;
  33.   }
  34.   if($taille>$taille_maxi) {
  35.     $this->setError('Le fichier est trop gros...');
  36.     return;
  37.   }
  38.   //On formate le nom du fichier ici...
  39.   $fichier = strtr($fichier,
  40.   'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
  41.   'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
  42.   $fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
  43. // Recherche Nom Unique avec un random
  44. $subDir = "fichier/";
  45. @mkdir($dossier.$subDir, 0777, true);
  46.   $ran = rand(1, 99999);
  47.   while (file_exists ($dossier.$subDir.'R_'.$ran.'F_'.$fichier)) {
  48.     $ran = rand(1, 99999);
  49.   }
  50.   if(!move_uploaded_file($this->File1['tmp_name'], $dossier.$subDir.'R_'.$ran.'F_'.$fichier)) {
  51.     $this->setError('Echec de l\'upload !');
  52.     return;
  53.   }
  54. // OK, donc on stocke le 'NOM SERVEUR' (avec dossier)
  55.   $this->File1['NomServeur'] = $dossier.$subDir.'R_'.$ran.'F_'.$fichier;
  56. // Le nom tout court
  57.   $this->File1['NomFichier'] = 'R_'.$ran.'F_'.$fichier;
  58. // Le type de fichier (pour mail)
  59.   $this->File1['ContType'] = $arr[$extension];
  60. }

mood
Publicité
Posté le 14-02-2016 à 19:22:56  profilanswer
 

n°2275719
fabdu68200
Posté le 15-02-2016 à 14:56:58  profilanswer
 

Bonjour,  
 
Il y a personne pour m'aiguiller?  
 
Merci

n°2275728
rufo
Pas me confondre avec Lycos!
Posté le 15-02-2016 à 17:48:44  profilanswer
 

Lignes 29 à 36 : elles font le test de la taille du fichier et de l'extension.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Cantine Calandreta : http://sourceforge.net/projects/canteen-calandreta
n°2275730
fabdu68200
Posté le 15-02-2016 à 17:53:07  profilanswer
 

bonjour,  
 
Oui sa je le sais...  
Moi ce que je voudrais c'est que si le champs est vide = pas de controle
Si le champs est plein = controle

n°2275737
rufo
Pas me confondre avec Lycos!
Posté le 15-02-2016 à 22:54:21  profilanswer
 

Ben tu testes si y'a un nom de fichier ou pas :/ if (!empty($fichier))


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Cantine Calandreta : http://sourceforge.net/projects/canteen-calandreta
n°2275738
fabdu68200
Posté le 15-02-2016 à 22:56:35  profilanswer
 

Bonsoir on ma dejà dit de faire comme ça et j'ai déjà essayer, j ai même demandé à un ami qui maitrise assez bien le php, mais on arrive pas...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  champs file parametre mais pas obligatoire

 

Sujets relatifs
Changer la valeur d'un champs par choix multipleChanger le champs d'un enregistrement d'une table
Un champs texte s'enregistre dans un TXTDésactiver saisie semi automatique sur un champs HTML (Chrome)
[MySQL] Savoir combien de champs sont renseignés parmi 7Plusieurs valeurs possible dans une variable/parametre
Remplir champsavant de soumettre un formulaire Outlook: formulaire personnalisé: accéder aux champs préprogrammés
[SQL] Sélectionner tous les champs dans une requete sans les citerRequête SQL jointure deux champs vers un même champ
Plus de sujets relatifs à : champs file parametre mais pas obligatoire


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite) / Groupe LDLC / Shop HFR