Page 1 sur 1

telecharger un fichier vers le serveur

Posté : 13 avr. 2007, 10:27
par dread
Bonjour à tout le monde!

Je travaille actuellement sur la possibilité de rapatrier un fichier de type mp3 depuis n'importe quel poste vers un dossier prédéfini sur un serveur.

Voici ce que j'ai fait jusqu'à présent:
unset($erreur);  
$extensions_ok = array('mp3');


if ((isset($_FILES['chanson'])) && (in_array( substr(strrchr($_FILES['chanson']['name'], '.'), 1), $extensions_ok ))) {

	$dest_dossier = "groupe/";
	$_FILES['chanson']['name'] = $row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-01.mp3";
	$dest_fichier = basename($_FILES['chanson']['name']);
	// copie du fichier
	move_uploaded_file($_FILES['chanson']['tmp_name'], $dest_dossier . $dest_fichier);
	
	$test1 = $dest_dossier . $dest_fichier; // le chemin
	
} 
Quand je fais un echo de $test1, il m'affiche le bon chemin de destination avec le nom correspondant mais rien ne se passe i.e. que je ne récupère pas le mp3 sur le serveur.

Il faut dire que ce code provient d'un module permettant de redimmensionner les images avant de les copier sur le serveur au bon endroit.
Il doit probablement me manquer le code qui dit de copier le mp3 dans le repertoire de destination.

Si quelqu'un sait comment faire, merci de m'aider.

Posté : 13 avr. 2007, 20:39
par Aureusms
il fait combien en poids ton mp3 ?

Edite les erreurs $_FILES avec $_FILES['variable']['error'] pour savoir si il y a un problème (un petit lien : http://www.phpdebutant.org/article113.php)

Posté : 16 avr. 2007, 15:17
par dread
j'ai essayé des mp3 de différents poids : min 3,25Mo.
Quand je fais un echo de $_FILES['variable']['error'], il me rajoute le chiffre 1. qu'est ce que ca veut dire? il y a 1 erreur?

Posté : 16 avr. 2007, 16:07
par Ryle
Explication sur les messages d'erreurs de chargement de fichiers : http://us.php.net/manual/fr/features.fi ... errors.php
UPLOAD_ERR_INI_SIZE
Valeur : 1. Le fichier téléchargé excède la taille de upload_max_filesize, configurée dans le php.ini.
Généralement la taille maximum définie par défaut dans le php.ini est de 2Mo :)

Posté : 17 avr. 2007, 10:51
par dread
Merci Ryle! C'était bien ca mon problème.

Sinon juste une autre question:
est-il possible via php, en plus de copier un fichier sur le serveur au bon endroit, de créer un dossier (dans lequel sera placer le fichier) dont le nom sera prédeterminé par le résultat d'une requete?

Et si oui, un peu d'aide ne sera pas de refus.

Merci encore pour l'info sur la taille max dans php.ini.

Posté : 17 avr. 2007, 15:23
par Ryle
Tu peux utiliser la fonction mkdir() pour créer un dossier. A toi de passer en paramètre le nom que tu veux utiliser, qu'il proviennent d'une variable, d'une requête ou juste d'une chaine :)