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 :

droits d'écriture et autre avec file_put_contents() [PHP 5.3]


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 37
    Points : 9
    Points
    9
    Par défaut droits d'écriture et autre avec file_put_contents()
    Bonjour, je poste car je me pose quelques questions sur l'utilisation de la fonction file_put_contents().

    J'écris un script qui commence par la création d'un fichier log qui permettra de lister toutes les erreurs que le programme peut rencontrer. Voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $log = "le script est lancé à " . date(  'd-m-Y H:i:s' ) ."\r\n";
    $fichier = "fichier.log";
    $ajouteContenu = file_put_contents( $fichier, $log, FILE_APPEND );
    if ($ajout === False) {
      //tester l'existence du fichier ???
      //tester les droits en écriture du fichier ???
      //tester d'ajouter du contenu dans ce fichier ???
    }
    Donc par rapport au précédent code, je comprends bien que la fonction file_put_contents() va créer (s'il n'existe pas) le fichier, ouvrir et écrire sur le fichier, mais s'il n'existe pas et que j'imagine car je n'ai pas les droits ou même qu'il n'y a plus la place sur le serveur (s'est-on jamais ) pour le créer via cette fonction comment je gère cette situation, ces erreurs ???

    Merci bcp pour vos lumières.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Dans ce cas, file_put_contents() renverra FALSE.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Invité
    Invité(e)
    Par défaut
    Si tu as une des 3 conditions que tu as écrits il serra en FALSE, enfet tu veux plutôt savoir pourquoi c'est en erreur.

    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
    $log = "le script est lancé à " . date(  'd-m-Y H:i:s' ) ."\r\n";
    fichier = "fichier.log";
    $ajouteContenu = file_put_contents( $fichier, $log, FILE_APPEND );
    if ($ajoutContenu === False) {
    //le fichier existe?
      if (file_exists($fichier)) {
        echo "The file $fichier exists";
    } else {
        echo "The file $fichier does not exist";
    }
    //Les permissions, (Linux)
    echo substr(sprintf('%o', fileperms($fichier)), -4);    
    }
     
    //L'espace dispo du dossier
    echo disk_free_space("chemin ton fichier");
    }
    Tu as une fonction pour chaque test.
    http://fr2.php.net/manual/en/function.file-exists.php
    http://fr2.php.net/manual/en/function.fileperms.php
    http://fr2.php.net/manual/fr/functio...free-space.php

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 37
    Points : 9
    Points
    9
    Par défaut
    Ok très bien merci beaucoup, c'était la démarche à suivre qui me manquait.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 18/07/2014, 14h36
  2. Réponses: 3
    Dernier message: 01/06/2011, 09h08
  3. Réponses: 1
    Dernier message: 04/04/2008, 13h50
  4. Passage d'un enregistrement à un autre avec TAB
    Par Cécile154 dans le forum Access
    Réponses: 2
    Dernier message: 16/02/2005, 14h47
  5. droits en écriture sur le réseau
    Par julien20vt dans le forum MFC
    Réponses: 4
    Dernier message: 25/03/2004, 11h29

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