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

jQuery Discussion :

UI dialog post data et file upload


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2012
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 135
    Par défaut UI dialog post data et file upload
    Bonjour,

    j'ai un formulaire dans une fenetre UI dialog qui s'enregistre correctement.

    Je souhaiterais ajouter dans ce formulaire un champ de type file.

    Code html : 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
    <form id="form_photo" method="post" enctype="multipart/form-data">
        <input name="id" type="hidden" value="">
        <input name="position" id="position" type="hidden" value="3">
        <table class="table_form">
            <tr>
                <td>Titre <span class="required">*</span></td>
                <td>
                    <input name="titre" type="text"  value="">
                </td>
            </tr>
            <tr>
                <td>Photo</td>
                <td>
                    <input name="fichier" id="fichier" type="file"/>
                </td>
            </tr>		
            <tr>
     
                <td>Suivi par <span class="required">*</span></td>
                <td>
                    <select name='suivi_par' id='suivi_par'><option value='0'>Choisissez...</option>
                <option value='1'selected >Arociel Florence</option>
                <option value='2' >NOM PRENOM</option></select>            </td>
            </tr>
            <tr>
     
                <td>Etat <span class="required">*</span></td>
                <td>
                    <select name='id_etat_photos' id='id_etat_photos'><option value='0'>Choisissez...</option>
                <option value='1' >Diffusée</option>
                <option value='2' >Non diffusée</option></select>            </td>
            </tr>
        </table>
    </form>

    Actuellement, j'ai une fonction jquery pour poster les données :

    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
    function savePhoto()
    {
        //envoie le formulaire en ajax, et evalue le retour
        app.wait();
        var $dialog = $(this);
        app.ajax({
            type: "post",
            url: "app/structures/photos/gestion.php",
            data : $("#form_photo").serialize(),
            success: function(data, status, rsp) {
                app.unwait();
                app.evalScripts(data, $dialog);
            }
        });
    }
    Habituellement, j'utilise le plugin "upload" tout seul, je ne sais pas comment faire fusionner à la fois le post du formulaire et le post du fichier dans le meme appel ajax.

    ci-dessous le code de l'upload
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $('#fichier'). upload('ajax.php',{
    	type:  "ajout_photo_structure",
    	id:  data.id
    	position:  data.position
    },function ( data ){
    	//alert ( data.position );
    	if  ( data. status  ===  0 )
    		alert ( "Le téléchargement a échoué." ) ;
    	else{	
    		//window.location.href = page_refresh;//refresh de la page
    	}
    },"json") ;
    Est-ce que vous sauriez de quelle manière je peux faire les deux ?

  2. #2
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Billets dans le blog
    125
    Par défaut
    Bonsoir

    C'est le fonctionnement par défaut !

    By default, the plugin calls jQuery's serializeArray method on the upload form to gather additional form data for all input fields (including hidden fields).
    The value of these form fields will be sent to the server along with the selected files.
    Le sujet est traité ici : https://github.com/blueimp/jQuery-Fi...onal-form-data

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

Discussions similaires

  1. File Upload en GWT : requête POST non exécutée
    Par 7awwet dans le forum GWT et Vaadin
    Réponses: 1
    Dernier message: 28/07/2012, 22h20
  2. Comment supprimer les post data
    Par jeff_! dans le forum Langage
    Réponses: 4
    Dernier message: 03/08/2006, 10h55
  3. [Struts][file upload] Exception Bizarre
    Par pmartin8 dans le forum Struts 1
    Réponses: 1
    Dernier message: 23/05/2006, 17h55
  4. [STRUTS][HTPPS]File upload
    Par jiraiya dans le forum Struts 1
    Réponses: 2
    Dernier message: 18/05/2006, 14h54
  5. [com applet-servlet][file upload] CharConversionException
    Par meufeu dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 10/08/2004, 12h03

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