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

AJAX Discussion :

[AJAX] Upload Ajax question


Sujet :

AJAX

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Mars 2009
    Messages : 22
    Points : 19
    Points
    19
    Par défaut [AJAX] Upload Ajax question
    Bonjour tout le monde.
    J'ai une question à propos de Ajax Upload, est-ce qu'il peut faire une copie du fichier qu'il upload de chez le client sur le serveur?
    Merci pour me répondre

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonjour,
    Upload c'est faire une copie du fichier depuis le client vers le serveur.
    Je ne comprend pas ce que tu veux faire.
    A+.

  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Mars 2009
    Messages : 22
    Points : 19
    Points
    19
    Par défaut
    Oh! Merci pour me répondre.
    Je travaille sur une application que je développe en php avec le framework Symfony.
    Je veux copier un fichier compressé du client dans le serveur, donc j'ai créé un AjaxUpload pour pouvoir accéder aux ressources des client.
    Voilà le code que j'ai créé :
    * Mon fichier newSuccess.php
    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
     
    <script type="text/javascript">
    $(document).ready(function() 
    {
    	new AjaxUpload('#button', 
    	{
    		           action: '<?php echo url_for('@test');?>',
    		           name: 'userfile',
    		           //onComplete : function(file)
    		           //{
    		             //           alert(file);
    		           //}
    	               onSubmit : function(file , ext)
    	               {
                                  if (! (ext && /^(zip|rar)$/i.test(ext)))
                                  {
                                     // extension is not allowed
                                     alert('Error: invalid file extension');
                                     // cancel upload
                                     return false;
                                  }
                                  else
                                  {
                                      alert('succes');
                                  }
    	               }
    	});	
    });
    </script>
     
    <div id="cont_frm">
      <form action="<?php echo url_for('@test'); ?>" method="post">
        <h1>Nouveau Template</h1>
        <div id="tree">
          <label id="labelfile">Emplacement de l'arborescence</label>
          <input id="button" type="file" />
        </div>
        <div id="infos">
          <?php include_partial('form', array('form' => $form)) ?>
        </div>
      </form>
    </div>
    et voilà la partie de ma classe actions.class.php où je veux traiter le fichier uploader :
    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
     
    //fonction test
      public function executeTest(sfWebRequest $request)
      {
     
        $uploaddir = $path = sfConfig::get('sf_web_dir').'/uploads';
        $uploadfile = $uploaddir . basename(getFiles('userfile'));
     
       if (move_uploaded_file(getFiles('userfile'), $uploadfile)) 
       {
             $this->msg = "success";
        } 
        else
        {
             $this->msg = "error";
        }
      }
    J'ai une intuition que l'erreur vient du traitement que je fais là dans la classe actions.class.php mais je n'arrive pas à savoir dans quel endroit.
    Merci

  4. #4
    Membre à l'essai
    Inscrit en
    Mars 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Mars 2009
    Messages : 22
    Points : 19
    Points
    19
    Par défaut
    Je viens de changer la fonction de teste dans ma classe actions ainsi:
    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
     
    //fonction test
      public function executeTest(sfWebRequest $request)
      {
     
        $uploaddir = $path = sfConfig::get('sf_web_dir').'/uploads';
        $this->test = $request->getFiles('userfile');
        echo $this->test;
        $uploadfile = $uploaddir . basename($this->test['name']);
     
       if (move_uploaded_file($this->test['tmp_name'], $uploadfile)) 
       {
             $this->msg = "success";
        } 
        else
        {
             $this->msg = "error";
        }
      }
    Mais malheureusement il ne reconnait pas 'name' je ne sais pas pourquoi.

  5. #5
    Membre à l'essai
    Inscrit en
    Mars 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Mars 2009
    Messages : 22
    Points : 19
    Points
    19
    Par défaut
    Salut tout le monde
    Après beaucoup de recherches, voilà la solution (comme je l'ai prédit, le problème se situe dans le code de la classe actions )
    Voilà le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    //fonction test
      public function executeTest(sfWebRequest $request)
      {
          foreach($_FILES as $fichier)
          {
    	    $fileName = $fichier['name'];
            $target = sfConfig::get('sf_upload_dir').'/'.$fileName;
     
            move_uploaded_file($fichier['tmp_name'], $target);
     
          }
      }
    Et ça fonctionne à merveille

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

Discussions similaires

  1. [AJAX] upload d'images php/ajax
    Par zehni dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 17/08/2007, 14h13
  2. [AJAX] upload image + recup variable
    Par minimoof dans le forum Général JavaScript
    Réponses: 15
    Dernier message: 31/05/2007, 21h57
  3. [AJAX] upload photo ajax
    Par kimcharlene dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 06/03/2007, 17h55
  4. [AJAX] Upload de fichier
    Par hedgehog dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 19/10/2006, 07h57
  5. [AJAX] upload fichiers avec AJAX
    Par jibouze dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 08/12/2005, 21h04

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