Permission d'un fichier envoyé : php

Résolu
Utilisateur anonyme -  
 Utilisateur anonyme -
Bonjour,
J'ai un petit soucis, quand j'uppload mon image avec mon formulaire, l'image se met avec en permissions : 600.
(Vu avec filezilla). Mais j'aimerais qu'il se met en fichier normale c'est à dire : 605. Comment faire ????

Voici le code php de mon upload :
<?php
if( isset($_POST['upload']) ) // si formulaire soumis
{
  if( isset($_GET['id']) ) 
  {
  $id = $_GET['id'];
  $content_dir = 'upload/'; // dossier où sera déplacé le fichier
  $tmp_file = $_FILES['fichier']['tmp_name'];
  if( is_uploaded_file($tmp_file) )
  {
    $type_file = $_FILES['fichier']['type'];
    $allowed_types = array("image/bmp", "image/gif", "image/jpeg", "image/jpg",);
    if(in_array($type_file, $allowed_types))
    {
      $size = $_FILES['fichier']['size'];
      if($size < 30000)
      {
      // on copie le fichier dans le dossier de destination
      $name_file = $_FILES['fichier']['name'];
      $extension_image = strrchr(strtolower($name_file), '.');
      $name_filefin = $id.$extension_image;
        if( move_uploaded_file($tmp_file, $content_dir . $name_filefin) )
        {
        echo "Le fichier &agrave; bien &eacute;t&eacute; uploader";
        }else{echo "Impossible de copier le fichier"; }
      }else{echo "Votre image est sup&eacute;rieure &agrave; la taille maximale de 30 000 octets";}
    }else{echo "Le fichier n'est pas une image"; }
  }else{echo "Le fichier est introuvable"; }
}else{echo "Aucun n'article n'a &eacute;t&eacute; trouv&eacute;"; }
}else{echo "Merci de remplir le formulaire";}
?>


--
Lucas

7 réponses

  1. internetasso Messages postés 1054 Date d'inscription   Statut Membre Dernière intervention   177
     
    le dossier d'upload lui est en 777 ?
    La création d'un site commence par la réflexion de son devenir...
    0
  2. internetasso Messages postés 1054 Date d'inscription   Statut Membre Dernière intervention   177
     
    quand avec ton filezilla tu créés ton dossier d'uploads et que tu es sur la fenetre de modification des attributs du fichier, tu mets les permissions en 777 et en dessous tu clics sur la case récursion dans les sous dossiers et tu clics sur appliquer à tous les fichiers et dossiers... la prochaine photo qui viendra se placer en upload dans ce dossier aura les perms 777....
    La création d'un site commence par la réflexion de son devenir...
    0
  3. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  4. Utilisateur anonyme
     
    J'ai donc mis :

          $name_filefin = chmod(".$id.$extension_image.", 605);
            if( move_uploaded_file($tmp_file, $content_dir . $name_filefin) )
            {
            echo "Le fichier &agrave; bien &eacute;t&eacute; uploader";
            }else{echo "Impossible de copier le fichier"; }


    Mais sa ne fonctionne pas.
    Comment faire ?
    0
  5. benvii Messages postés 311 Statut Membre 137
     
    Essaye tout simplement :
    if( move_uploaded_file($tmp_file, $content_dir . $name_filefin) )
    {
    chmod($content_dir . $name_filefin, 605);
    //Tu rajoutes un echo sit tu veux
    }
    0
  6. Utilisateur anonyme
     
    J'ai mis ceci :

    <?php
    if( isset($_POST['upload']) ) // si formulaire soumis
    {
      if( isset($_GET['id']) ) 
      {
      $id = $_GET['id'];
      $content_dir = 'upload/'; // dossier où sera déplacé le fichier
      $tmp_file = $_FILES['fichier']['tmp_name'];
      if( is_uploaded_file($tmp_file) )
      {
        $type_file = $_FILES['fichier']['type'];
        $allowed_types = array("image/bmp", "image/gif", "image/jpeg", "image/jpg",);
        if(in_array($type_file, $allowed_types))
        {
          $size = $_FILES['fichier']['size'];
          if($size < 30000)
          {
          // on copie le fichier dans le dossier de destination
          $name_file = $_FILES['fichier']['name'];
          $extension_image = strrchr(strtolower($name_file), '.');
          $name_filefin = $id.$extension_image;
            if( move_uploaded_file($tmp_file, $content_dir . $name_filefin) )
            {
            $action = 1;
            }else{echo "Impossible de copier le fichier"; }
          }else{echo "Votre image est sup&eacute;rieure &agrave; la taille maximale de 30 000 octets";}
        }else{echo "Le fichier n'est pas une image"; }
      }else{echo "Le fichier est introuvable"; }
    }else{echo "Aucun n'article n'a &eacute;t&eacute; trouv&eacute;"; }
    }else{echo "Merci de remplir le formulaire";}
    if ($action == 1)
    {
      $chmod = chmod($content_dir . $name_filefin, 605);
      if ($chmod == true)
      {
        echo "Le fichier &agrave; bien &eacute;t&eacute; uploader";
      }
      else
      {
        echo "Erreur";
      }
    }
    else
    {
      echo "Erreur";
    }


    Sa fonctionne sauf que il me fait un chmod en 135
    0