2010-12-02 4 views
0

J'ai un code qui a besoin de voir si un fichier a été sélectionné avant qu'il n'exécute le code .... son code assez simple, c'est juste ne fonctionne pas pour une raison quelconque et je ne vois pas pourquoi. mon code est le suivantPHP File Upload

if(isset($_FILES['filename'])){ 
$directory = 'uploads/'.substr(md5(microtime() * mktime()),0,15); 

if(!is_dir($directory)){ 
    mkdir($directory, 0777, TRUE); 
    chmod($directory, 0777); 
} 

}

Je champs de plusieurs fichiers qui sont codés comme ceci:

<input class="file-input" name="filename[]" type="file" size="32" /> 

Lorsque je déplace le code DEHORS du « if (isset .... .. » bloc, il fonctionne parfaitement .... tout simplement pas à l'intérieur, et c'est là où je en ai besoin.

quelqu'un peut-il voir où im va mal?

+1

'microtime() * mktime()' n'a aucun sens. Vous multipliez une chaîne (oui, microtime renvoie une chaîne sauf si vous utilisez 'microtime (true)') avec un nombre. 'md5 (microtime())' devrait être assez bon pour votre but. Ou jetez un oeil à [uniqid] (http://php.net/uniqid) – ThiefMaster

Répondre

1

Oh chéri .... J'ai pensé le problème.

Oui, c'est juste ... J'ai oublié de changer le type de formulaire en multipart.

N'hésitez pas à me jeter des choses !!!

Merci de toute façon les gars!

+2

acceptez votre propre réponse – ajreal