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

MkFramework Discussion :

lister fichiers d'un repertoir


Sujet :

MkFramework

  1. #1
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2013
    Messages
    201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2013
    Messages : 201
    Points : 75
    Points
    75
    Par défaut lister fichiers d'un repertoir
    Bonjour,

    Je voudrais lister les fichiers d'un dossier. Je l'ai créer dans data/dump

    Dans mon main j'ai cette methode qui me fait la sauvegarde de la base et qui m'affiche les sauvegardes faites.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public function _sauve(){
    		$oSqldump=new model_sqldump;
    		$oDir=new _dir('../data/dump/');
    		$tFile=$oDir->getListFile();
    		$oView=new _view('gestionBase::sauve');
    		$oView->tFile=$tFile;
    		$this->oLayout->add('main',$oView);
    	}
    Dans ma vue sauve j'ai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    SAUVEGARDE
     
    <?php if($this->tFile):?>
    		<?php foreach($this->tFile as $oFile):?>
    	<div class="ligne" >
    		<?php echo $oFile ?>
                    <br>
     
    	</div>
    	<?php endforeach;?>
    	<?php endif;?>
    J'ai cette 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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    Erreur
    Object of class _file could not be converted to string
    #0 /home/u940870368/public_html/MK/mkframework/data/genere/secu06/module/gestionBase/view/sauve.php(6): exception_error_handler(4096, 'Object of class...', '/home/u94087036...', 6, Array)
    #1 /home/u940870368/public_html/MK/mkframework/lib/framework/class_view.php(83): include('/home/u94087036...')
    #2 /home/u940870368/public_html/MK/mkframework/lib/framework/class_layout.php(121): _view->show()
    #3 /home/u940870368/public_html/MK/mkframework/data/genere/secu06/layout/template1.php(46): _layout->load('main')
    #4 /home/u940870368/public_html/MK/mkframework/lib/framework/class_layout.php(108): include('/home/u94087036...')
    #5 /home/u940870368/public_html/MK/mkframework/data/genere/secu06/module/gestionBase/main.php(38): _layout->show()
    #6 /home/u940870368/public_html/MK/mkframework/lib/framework/class_root.php(237): module_gestionBase->after()
    #7 /home/u940870368/public_html/MK/mkframework/data/genere/secu06/public/index.php(55): _root->run()
    #8 {main}
     
    Detail:
    #0 /home/u940870368/public_html/MK/mkframework/data/genere/secu06/module/gestionBase/view/sauve.php (6)
    exception_error_handler( , 'Object of class _file could not be converted to string' , '/home/u940870368/public_html/MK/mkframework/data/genere/secu06/module/gestionBase/view/sauve.php' , , Array ( [sClass] => plugin_tpl [oFile] => _file Object ( [sAdresse:_file:private] => ../data/dump//db_backup_2013-06-06-14-58-19.sql [sContent:_file:private] => ) ) )
    #1 /home/u940870368/public_html/MK/mkframework/lib/framework/class_view.php (83)
    include( '/home/u940870368/public_html/MK/mkframework/data/genere/secu06/module/gestionBase/view/sauve.php' )
    #2 /home/u940870368/public_html/MK/mkframework/lib/framework/class_layout.php (121)
    _view -> show( )
    #3 /home/u940870368/public_html/MK/mkframework/data/genere/secu06/layout/template1.php (46)
    _layout -> load( 'main' )
    #4 /home/u940870368/public_html/MK/mkframework/lib/framework/class_layout.php (108)
    include( '/home/u940870368/public_html/MK/mkframework/data/genere/secu06/layout/template1.php' )
    #5 /home/u940870368/public_html/MK/mkframework/data/genere/secu06/module/gestionBase/main.php (38)
    _layout -> show( )
    #6 /home/u940870368/public_html/MK/mkframework/lib/framework/class_root.php (237)
    module_gestionBase -> after( )
    #7 /home/u940870368/public_html/MK/mkframework/data/genere/secu06/public/index.php (55)
    _root -> run( )
    #8 {main}

  2. #2
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Points : 19 100
    Points
    19 100
    Billets dans le blog
    17
    Par défaut
    La methode getListFile renvoie un tableau d'objet _file
    pour afficher leur nom, il faut utiliser leur methode getName()
    cf la doc sur _file http://mkdevs.com/doxygen/class__file.html

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    SAUVEGARDE
     
    <?php if($this->tFile):?>
    		<?php foreach($this->tFile as $oFile):?>
    	<div class="ligne" >
    		<?php echo $oFile->getName() ?>
                    <br>
     
    	</div>
    	<?php endforeach;?>
    	<?php endif;?>
    pour savoir le type d'une variable, utiliser print_r()
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  3. #3
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2013
    Messages
    201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2013
    Messages : 201
    Points : 75
    Points
    75
    Par défaut
    Ok merci j'ai avancé dans mes methodes.

    Je peux lister mes fichiers et comme action j'aimerai pouvoir le supprimer

    Dans ma vue
    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
    <div class="titre">SAUVEGARDE</div> 
     
    <?php if($this->tFile):?>
    		<?php foreach($this->tFile as $oFile):?>
    	<div class="ligne" >
    		<?php echo $oFile->getName() ?> <a href="<?php echo $this->getLink('gestionBase::delete',array('file'=>$oFile->getName()))?>" title="Créer une sauvegarde">Supprimer</a>
            <br>
    	</div>
    	<?php endforeach;?>
    <?php endif;?>
     
    <a href="<?php echo $this->getLink('gestionBase::createSave')?>" title="Créer une sauvegarde">
    	<div class="button">Sauvegarder la base de donnée
    	</div>
    </a>
    Et mes methodes
    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
    public function _sauve(){
     
    		$oDir=new _dir('../data/dump/');
    		$tFile=$oDir->getListFile();
    		$oView=new _view('gestionBase::sauve');
    		$oView->tFile=$tFile;
    		$this->oLayout->add('main',$oView);
    	}
     
    	public function _createSave(){
    		$oSqldump=new model_sqldump;
    		_root::redirect('gestionBase::sauve');
    	}
     
    	public function _delete(){
    		if(!_root::getRequest()->isGet() ){ //si ce n'est pas une requete get on ne soumet pas
    			return null;
    		}
     
    		$oFile=_root::getParam('file');
    		$oFile->delete();
     
    		_root::redirect('gestionBase::sauve');
    	}
    Mais je doit pas faire comme il faut car la méthode delete() ne marche pas. Je ne sais pas comment faire pour supprimer le fichier.

  4. #4
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Points : 19 100
    Points
    19 100
    Billets dans le blog
    17
    Par défaut
    Lorsque vous faites
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $oFile=_root::getParam('file');
    Vous récupérez une chaine de caractère contenant le nom du fichier
    si vous souhaitez utiliser la classe _file, il faut d'abord instancier un objet _file ainsi:
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $oFile=new _file(_root::getParam('file'));
    Après vous pourrez utiliser les methodes de la classe _file comme delete
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  5. #5
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2013
    Messages
    201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2013
    Messages : 201
    Points : 75
    Points
    75
    Par défaut
    J'ai cette 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
    18
    19
    Erreur
     
    db_backup_2013-06-06-23-02-08.sql n'existe pas
    #0 /opt/lampp/htdocs/tests/mkframework/lib/framework/class_file.php(119): _file->verif()
    #1 /opt/lampp/htdocs/tests/mkframework/data/genere/secu06/module/gestionBase/main.php(40): _file->delete()
    #2 /opt/lampp/htdocs/tests/mkframework/lib/framework/class_root.php(232): module_gestionBase->_delete()
    #3 /opt/lampp/htdocs/tests/mkframework/data/genere/secu06/public/index.php(55): _root->run()
    #4 {main}
     
    Detail:
    #0 /opt/lampp/htdocs/tests/mkframework/lib/framework/class_file.php (119) 
    _file -> verif( ) 
    #1 /opt/lampp/htdocs/tests/mkframework/data/genere/secu06/module/gestionBase/main.php (40) 
    _file -> delete( ) 
    #2 /opt/lampp/htdocs/tests/mkframework/lib/framework/class_root.php (232) 
    module_gestionBase -> _delete( ) 
    #3 /opt/lampp/htdocs/tests/mkframework/data/genere/secu06/public/index.php (55) 
    _root -> run( ) 
    #4 {main}
    Je pense savoir pourquoi. C'est sans doute par ce que je ne lui ai pas donnée le chemin exact du fichier mais je n'ai donnée que le nom.

    Comment faire pour remédier à cela?

  6. #6
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Points : 19 100
    Points
    19 100
    Billets dans le blog
    17
    Par défaut
    Remplacez getName() par getAdresse(), cette methode retourne le chemin complet vers le fichier, getName() retourne uniquement le nom du fichier

    note: je vais completer la documentation
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  7. #7
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2013
    Messages
    201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2013
    Messages : 201
    Points : 75
    Points
    75
    Par défaut
    MAGIC ça marche

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

Discussions similaires

  1. [WD15] Lister fichiers d'un repertoir sur serveur H/F CS
    Par rednight dans le forum WinDev
    Réponses: 1
    Dernier message: 31/01/2011, 15h34
  2. lister fichiers d'un repertoire dont un mot est dans le contenu
    Par italiasky dans le forum Scripts/Batch
    Réponses: 5
    Dernier message: 22/02/2010, 17h45
  3. Lister fichiers dans sous repertoires
    Par micka180 dans le forum VBScript
    Réponses: 2
    Dernier message: 26/11/2009, 10h34
  4. Lister fichier dans un repertoire distant
    Par toitoine01 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/06/2008, 09h30
  5. [TP]Lister les fichiers d'un répertoire
    Par nvtitan dans le forum Turbo Pascal
    Réponses: 4
    Dernier message: 21/06/2002, 11h22

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