Problème upload fichier

Fermé
88av Messages postés 262 Date d'inscription dimanche 3 mars 2013 Statut Membre Dernière intervention 17 avril 2015 - 13 janv. 2014 à 18:54
 Utilisateur anonyme - 16 janv. 2014 à 02:07
Bonjour,

J'ai suivi un tutoriel pour uploader un fichier sur un site web à cette adresse :

http://fr.openclassrooms.com/informatique/cours/upload-de-fichiers-par-formulaire/recuperer-le-fichier

J'ai donc crée ce code, mais il ne marche pas, lorsque je l'execute, le fichier ne vat pas dans le dossier.

J'ai mis les permissions du dossier à 733.


<form method="POST" action="jpg.php" autocomplete="off" enctype="multipart/form-data">
	<input type="file" name="source" />
	<input type="submit" name="convertire" value="Convertire"/>
</form>

<?php
 if(isset($_POST['convertire'])){

// On vérifie si le fichier à été transféré
if ($_FILES['source']['error'] > 0) $erreur = "Erreur lors du transfert";

// On vérifie la taille maximal du fichier
if ($_FILES['source']['size'] > $maxsize) $erreur = "Le fichier est trop gros";

// On vérifie l'extension
$extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png' );
//1. strrchr renvoie l'extension avec le point (« . »).
//2. substr(chaine,1) ignore le premier caractère de chaine.
//3. strtolower met l'extension en minuscules.
$extension_upload = strtolower(  substr(  strrchr($_FILES['source']['name'], '.')  ,1)  );
if ( in_array($extension_upload,$extensions_valides) ) echo "Extension correcte";

// On crée le nom du fichier
$nom_fichier = md5(uniqid(rand(), true));

// On déplace le fichier
//$nom = "menu/fichier/image/images/{$nom_fichier}.{$extension_upload}";
$nom = "/fichiers/{$nom_fichier}.{$extension_upload}";
$resultat = move_uploaded_file($_FILES['source']['tmp_name'],$nom);
if ($resultat) echo "Transfert réussi";


}
?>


Merci davance.

Cordialement
A voir également:

1 réponse

Salut,

Il faut mettre le relative plutôt que l'absolute!

$nom = "/var/www/bla/bla/{$nom_fichier}.{$extension_upload}";

Entre ce bout de code pour trouver le chemin relatif à la racine, puis complète avec /fichiers/{$nom_fichier}.{$extension_upload}

die($_SERVER['DOCUMENT_ROOT']);
0