2011-03-21 5 views
0

J'avais l'habitude d'avoir un fichier php qui fait un simple move_uploaded_file en utilisant la sélection d'un fichier local et le téléchargement sur notre serveur web UNIX.Question À propos de move_uploaded_file()

Maintenant, nous émigrent notre code à un serveur Windows2003, le move_uploaded_file() échoue, l'erreur qui revient sans cesse se lit comme:

« Impossible de déplacer le répertoire C: Windows \ temp \ 100D.php » fichier desiredDirectory.

Ici, desiredDirectory signifie qu'il capuche le bon répertoire pour ce mouvement de fichier. Le code que nous avons utilisé est assez simple:

si (move_uploaded_file ($ _ FILES [ 'fichier'] [ 'tmp_name'], $ target))

et nous avons essayé de changer à HTTP_POST_FILES $, mais toujours pas travail.

Donc, nous sommes vraiment désemparés en ce moment, je me demande si des experts pourraient nous donner quelques conseils, merci beaucoup.

Répondre

1

Vous devez vérifier si le répertoire cible existe et si l'utilisateur apache dispose de tous les droits sur ce dossier.

Pour un test, vous pouvez définir les paramètres d'accès au dossier pour l'utilisateur « tout le monde » à « plein »

L'extrait de votre code que je vois ici est correct et vous ne devez pas utiliser $ HTTP_POST_FILES

1

Le serveur Web dispose-t-il d'autorisations d'écriture sur le répertoire cible? Étant donné que vous dites que les chemins sont corrects, c'est l'autre principale raison pour laquelle les déplacements de fichiers échouent.