IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Problème d'upload de fichiers peut etre serveur


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2008
    Messages : 9
    Points : 11
    Points
    11
    Par défaut Problème d'upload de fichiers peut etre serveur
    Salut tout le monde alors voila je suis en train de tester un script d'upload de photo fichiers sur mon serveur il est placé à cette adresse http://www.setrouver.ch/lesmsn/upload.php

    bref quand je l'envoi cela me marque Warning: move_uploaded_file() [function.move-uploaded-file]: SAFE MODE Restriction in effect. The script whose uid is 10055 is not allowed to access / owned by uid 0 in /home/httpd/vhosts/setrouver.ch/httpdocs/lesmsn/upload.php on line 30

    Je comprend pas trop je me pose la question si c est pas une erreur serveur mon dossier a bien comme chmod 777 qqun peut t'il m'éclairer ou trouver au pire une alternative voici mon script:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    <?php
     
    if(isset($_FILES['photo']))
    {
      // params
      unset($erreur);
      $extensions_ok = array('png', 'gif', 'jpg', 'jpeg');
      $taille_max = 100000;
      $dest_dossier = '/images/';
      // vérifications
      if( !in_array( substr(strrchr($_FILES['photo']['name'], '.'), 1), $extensions_ok ) )
      {
        $erreur = 'Veuillez sélectionner un fichier de type png, gif ou jpg !';  
      }
      elseif( file_exists($_FILES['photo']['tmp_name']) 
              and filesize($_FILES['photo']['tmp_name']) > $taille_max)
      {
        $erreur = 'Votre fichier doit faire moins de 500Ko !';
      }
      // copie du fichier
      if(!isset($erreur))
      {
        $dest_fichier = basename($_FILES['photo']['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-1]+)/i', '_', $dest_fichier);
        // copie du fichier
        move_uploaded_file($_FILES['photo']['tmp_name'], $dest_dossier . $dest_fichier);
      }
    }
     
    ?>
    <html>
    <body>
    <!-- Erreur ? -->
    <?php 
    if(isset($erreur)){
      echo '<p>', $erreur ,'</p>';
    }
    ?>
    <!-- Formulaire -->
    <!-- Attention, ne de ne pas oublier le  enctype="multipart/form-data" -->
    <form method="POST" action="upload.php" enctype="multipart/form-data">
    <!-- Limiter la taille des fichiers à 500Ko -->
    <input type="hidden" name="MAX_FILE_SIZE" value="500000" /> 
    <fieldset>
    <legend>Envoi de fichiers</legend>
    <!-- champs d'envoi de fichier, de type file -->
    <p><label for="photo">Photo :</label><input type="file" name="photo" /></p>
    <p><label for="photo_2">Photo 2 :</label><input type="file" name="photo_2" /></p>
    <!-- bouton d'envoi -->
    <p><input type="submit" name="envoi" value="Envoyer les fichiers" /></p>
    </legend>
    </fieldset>
    </form>
    </body>
    </html>

  2. #2
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 487
    Points : 5 134
    Points
    5 134
    Par défaut
    C'est pourtant indiqué c'est un problème de restriction, SAFE MODE est activé sur le serveur.
    Du coup avec ta fonction move_uploaded_file(), le serveur vérifie que le fichier/dossier que tu vas utiliser a le même UID que le script qui est actuellement exécuté.
    -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_SIGNATURE -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
    Dans la mesure du possible, essayez de montrer votre problème en situation réelle en nous donnant une url, que l'on puisse tester.
    Pensez également à cocher

    Aucun problème ne doit être résolu en MP (Message Privé) le forum est là pour ça.

    Dimension Internet

Discussions similaires

  1. [VB.NET]upload de fichier vers un serveur
    Par damaskinos dans le forum Windows Forms
    Réponses: 5
    Dernier message: 09/10/2013, 19h20
  2. [FTP] Problème pour uploader un fichier
    Par Crazyblinkgirl dans le forum Entrée/Sortie
    Réponses: 10
    Dernier message: 07/01/2008, 22h21
  3. Réponses: 2
    Dernier message: 25/09/2007, 15h09
  4. Réponses: 3
    Dernier message: 06/06/2006, 17h15
  5. Upload de fichier sur le serveur
    Par krfa1 dans le forum ASP
    Réponses: 9
    Dernier message: 29/11/2005, 13h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo