2010-08-08 5 views
0

Je télécharge un fichier = Plupload. J'ai vérifié les variables $_FILES, $_POST, $this->data, tous sont vides et !isset S'il vous plaît me aidercakePHP ou PHP avec Plupload

function mod_uploadImg($id = null){ 
     if (!$id){ 
       return false; 
     } 
     if (!empty($_POST)){ 
       CakeLog::write('activity', 'file exist'); 
     } 
     if (isset($_FILES['file']['tmp_name']) && is_uploaded_file($_FILES['file']['tmp_name'])){ 
       CakeLog::write('activity', 'file exist'); 
     } 
     if (!empty($this->data)){ 
       CakeLog::write('activity', '$this->data'); 
     } 

     if (!empty($_FILES)){ 
     CakeLog::write('activity', '$_FILES'); 
     } 
    } 

J'ai mis multipart/form-data sous forme (bien que le script semble Do not doit mettre)

+0

Veuillez montrer du code. –

Répondre

0

Utilisation: // Lit le flux d'entrée binaire et l'ajoute au fichier temporaire $ in = fopen ("php: // input", "rb");

0

Avez-vous mis

enctype="multipart/form-data" 

dans votre déclaration de formulaire?

+0

je l'ai fait, $ this-> form (..., array ('type' => 'fichier' ...); – meotimdihia

+0

@meoth ce n'est pas ce que signifie Iznogood.S'il vous plaît montrer le code HTML généré du formulaire –

+0

hey, jetez un oeil http://pastebin.com/Uq7yJkhW merci – meotimdihia

0

Le problème vient du fait que vous utilisez le téléchargement de fichier Ajax. Ajout de fichier Ajax effectivement créé une balise cachée où il existe une forme normale avec l'élément de téléchargement de fichier.

Ceci est la racine du problème. iframe ressemble à une page séparée et Firebug ne peut pas gérer le message de cette requête. De plus, les champs sont probablement totalement différents de la convention de Cake.

J'ai eu le même problème dans le passé et je me suis battu avec la même chose. :) Mon conseil - utiliser le téléchargement normal.

+0

Je sais que les champs sont différents avec la convention de Cake, j'ai besoin de saisir des données ajax qui plupload a envoyé – meotimdihia

+0

Ensuite, essayez de l'envoyer par mail, au moins vous verrez les résultats dans votre mail :) –