Comment puis-je déplacer un fichier vers un autre dossier à l'aide de php?
J'ai un formulaire d'upload, où les utilisateurs peuvent télécharger des images qui sont actuellement en cours de téléchargement dans un dossier j'ai fait appelé 'temp' et leurs emplacements sont enregistrés dans un tableau nommé $_SESSION['uploaded_photos']. Une fois que l'utilisateur pousse la "Page Suivante" du bouton, je le veux pour déplacer les fichiers dans un nouveau dossier est créé dynamiquement juste avant que.
if(isset($_POST['next_page'])) {
if (!is_dir('../images/uploads/listers/'.$_SESSION['loggedin_lister_id'])) {
mkdir('../images/uploads/listers/'.$_SESSION['loggedin_lister_id']);
}
foreach($_SESSION['uploaded_photos'] as $key => $value) {
$target_path = '../images/uploads/listers/'.$_SESSION['loggedin_lister_id'].'/';
$target_path = $target_path . basename($value);
if(move_uploaded_file($value, $target_path)) {
echo "The file ". basename($value). " has been uploaded<br />";
} else{
echo "There was an error uploading the file, please try again!";
}
} //end foreach
} //end if isset next_page
Un exemple pour une valeur de $qui est utilisé est:
../images/uploads/temp/IMG_0002.jpg
Et un exemple de $target_path qui est utilisé est:
../images/uploads/listers/186/IMG_0002.jpg
Je peux voir le fichier dans le dossier temp, ces deux chemins d'accès de regarder bon pour moi et j'ai vérifié pour s'assurer que la fonction mkdir fait de la création du dossier dont il l'a fait.
Comment puis-je déplacer un fichier vers un autre dossier à l'aide de php?
OriginalL'auteur zeckdude | 2011-11-21
Vous devez vous connecter pour publier un commentaire.
Que j'ai lu votre scénario, il semble que vous avez manipulé le téléchargement et déplacé les fichiers dans votre dossier "temporaire", et maintenant, vous souhaitez déplacer le fichier lorsque qu'ils ou elles exercent une action nouvelle (en cliquant sur le bouton Suivant).
Autant que PHP est concerné - la dans vos fichiers "temp" ne sont pas des fichiers téléchargés plus, donc vous ne pouvez plus utiliser move_uploaded_file.
Tout ce que vous devez faire est d'utiliser renommer:
OriginalL'auteur HorusKol