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

Symfony PHP Discussion :

sfForm standalone - Upload file avec préfixe


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Avril 2003
    Messages
    397
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 397
    Par défaut sfForm standalone - Upload file avec préfixe
    Bonjour,

    J'utilise sfForm en standalone pour mes formulaires.

    Quand je n'utilise pas de préfixe à mes éléments de formulaires tel que

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->widgetSchema->setNameFormat(self::PREFIX . '[%s]');
    J'arrive parfaitement à réaliser le binding et passer le fichier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $oFormFile->bind(array(), array('file' => $_FILES['file']));
    En revanche quand j'indique un préfixe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->widgetSchema->setNameFormat(self::PREFIX . '[%s]');
    Je ne parviens plus à "binder" mon fichier.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $oFormFile->bind(array(), array('file' => $_FILES['myPrefix']['file']));
    or
    $oFormFile->bind(array(), array('file' => $_FILES['myPrefix']));
    J'ai pourtant essayer de ré-écrire le tableau FILES pour le fournir comme-ci il n'y avait pas eu de préfixe de déclarer mais sans plus de succès au binding.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        $file = array();
        if (isset($_FILES[Form::PREFIX]) == true) {
            foreach ($_FILES[Form::PREFIX] as $fileAttr => $aFile) {
                foreach ($aFile as $fileName => $fileValue)
                    $file[Form::PREFIX][$fileName][$fileAttr] = $fileValue;
            }
        }
     
    $oFormFile->bind(array(), array('file' => $file));
    Ma question, comment faire le bind du fichier lorsqu'on utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->widgetSchema->setNameFormat(self::PREFIX . '[%s]'); ?
    Merci,
    Dorian

  2. #2
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    Est-ce que quelque chose comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->form->bind($request->getParameter($this->form->getName()))
    pourrait t'aider ?

  3. #3
    Membre éclairé
    Inscrit en
    Avril 2003
    Messages
    397
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 397
    Par défaut
    Du tout je n'utilise par le framework Symfony mais juste les composants sfForm seul (standalone).

  4. #4
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    Pas un problème, il suffit d'adapter un peu le code.

    L'idée est de récupérer le nom du "NameFormat" du formulaire quel qu'il soit sans avoir à le connaître avec la fonction du formulaire "getName()"

  5. #5
    Membre éclairé
    Inscrit en
    Avril 2003
    Messages
    397
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 397
    Par défaut
    Je n'ai aucun soucis à réaliser le bind sur les données.

    Mon problème est uniquement lié aux FILES (upload) lorsque j'utilise $this->widgetSchema->setNameFormat, sans ça fonctionne également très bien (voir mon explication sur le 1er sujet).

  6. #6
    Membre chevronné Avatar de sacricri
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    324
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 324
    Par défaut
    Bonjour,

    As-tu essayé de faire un print_r($_FILES) afin de vérifier le format du tableau ?

Discussions similaires

  1. [2.x] Upload file avec etat d'avancement de l'upload
    Par snipemi dans le forum Symfony
    Réponses: 16
    Dernier message: 29/08/2011, 14h32
  2. upload file avec silverlight
    Par Etudiante_Ines dans le forum Silverlight
    Réponses: 5
    Dernier message: 24/05/2011, 00h26
  3. Réponses: 5
    Dernier message: 24/07/2010, 16h16
  4. Upload file avec web service (Axis 2)
    Par Leopardi dans le forum Services Web
    Réponses: 0
    Dernier message: 18/09/2008, 12h53
  5. Loader .X File avec Delphi
    Par Vivien/Epita dans le forum DirectX
    Réponses: 2
    Dernier message: 23/02/2005, 13h18

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