Php upload défaillante
sdrogba
Messages postés
66
Date d'inscription
Statut
Membre
Dernière intervention
-
graffx Messages postés 6506 Date d'inscription Statut Contributeur Dernière intervention -
graffx Messages postés 6506 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je suis entrain de monter un site et en attendant d'avoir mes accès sur mon hébergeur je fais des essais en local, j'en suis à essayer d'uploader des images.
Voici mon code :
$dossier = 'C:/wamp/www/Geckos/Photo/'.$nom.'/';
mkdir($dossier, 0777);
$fichier = basename($_FILES['upfile']['name']);
$taille_maxi = 100000;
$taille = filesize($_FILES['upfile']['tmp_name']);
$extensions = array('.png', '.gif', '.JPG', '.jpeg');
$extension = strrchr($_FILES['upfile']['name'], '.');
//Début des vérifications de sécurité...
if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
{
$erreur = 'Vous devez uploader un fichier de type png, gif, jpg, jpeg, txt ou doc...';
}
if($taille>$taille_maxi)
{
$erreur = 'Le fichier est trop gros...';
}
if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
{
//On formate le nom du fichier ici...
$fichier = strtr($fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
echo "fichier ".$fichier;
echo "dossier ".$dossier;
echo"fonction ".$_FILES['upfile']['tmp_name']." gggggg ". $dossier . $fichier;
if(move_uploaded_file($_FILES['upfile']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
{
echo 'Upload effectué avec succès !';
}
else //Sinon (la fonction renvoie FALSE).
{
echo 'Echec de l\'upload !';
}
}
else
{
echo $erreur;
}
C'est la dernière partie de code qui ne va pas il semblerait que la fonction move_uploaded_file retourne faux à chaque fois.
Enfin et ça je ne comprend pas pourquoi mais $_FILES['upfile']['tmp_name'] renvoie blanc et je ne sais pas quoi faire voici la partie formulaire
echo 'Photo 1 : <input name="upfile" type="file" size="50"><br />';
Aidez moi svp je tourne en rond depuis quelques heures déja.
Merci d'avance
Je suis entrain de monter un site et en attendant d'avoir mes accès sur mon hébergeur je fais des essais en local, j'en suis à essayer d'uploader des images.
Voici mon code :
$dossier = 'C:/wamp/www/Geckos/Photo/'.$nom.'/';
mkdir($dossier, 0777);
$fichier = basename($_FILES['upfile']['name']);
$taille_maxi = 100000;
$taille = filesize($_FILES['upfile']['tmp_name']);
$extensions = array('.png', '.gif', '.JPG', '.jpeg');
$extension = strrchr($_FILES['upfile']['name'], '.');
//Début des vérifications de sécurité...
if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
{
$erreur = 'Vous devez uploader un fichier de type png, gif, jpg, jpeg, txt ou doc...';
}
if($taille>$taille_maxi)
{
$erreur = 'Le fichier est trop gros...';
}
if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
{
//On formate le nom du fichier ici...
$fichier = strtr($fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
echo "fichier ".$fichier;
echo "dossier ".$dossier;
echo"fonction ".$_FILES['upfile']['tmp_name']." gggggg ". $dossier . $fichier;
if(move_uploaded_file($_FILES['upfile']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
{
echo 'Upload effectué avec succès !';
}
else //Sinon (la fonction renvoie FALSE).
{
echo 'Echec de l\'upload !';
}
}
else
{
echo $erreur;
}
C'est la dernière partie de code qui ne va pas il semblerait que la fonction move_uploaded_file retourne faux à chaque fois.
Enfin et ça je ne comprend pas pourquoi mais $_FILES['upfile']['tmp_name'] renvoie blanc et je ne sais pas quoi faire voici la partie formulaire
echo 'Photo 1 : <input name="upfile" type="file" size="50"><br />';
Aidez moi svp je tourne en rond depuis quelques heures déja.
Merci d'avance
A voir également:
- Php upload défaillante
- Youtube upload - Télécharger - Diffusion
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Commun file upload pattern ✓ - Forum Réseaux sociaux
- Gofile upload - Télécharger - Téléchargement & Transfert
6 réponses
dans ton formulaire, tu as bien mis le enctype comme ca:
<form method="post" action="page.php" enctype="multipart/form-data">
<form method="post" action="page.php" enctype="multipart/form-data">
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
donc tu as bien mis un $nom = $_POST['nom'], ok.
fais un echo de ton upload_file pour voir ce qu' il te dit.
fais un echo de ton upload_file pour voir ce qu' il te dit.
$fichier = IMGP1922.JPG
$dossier = C:/wamp/www/Geckos/Photo/jhhjg
$_FILES['upfile']['tmp_name'] = il renvoi rien
$dossier = C:/wamp/www/Geckos/Photo/jhhjg
$_FILES['upfile']['tmp_name'] = il renvoi rien
php.ini
;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;
; Whether to allow HTTP file uploads.
; http://php.net/file-uploads
file_uploads = On
; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
; https://www.php.net/manual/en/ini.core.php#ini.upload-tmp-dir
upload_tmp_dir = "c:/wamp/tmp"
; Maximum allowed size for uploaded files.
; https://www.php.net/manual/en/ini.core.php#ini.upload-max-filesize
upload_max_filesize = 10M
;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;
; Whether to allow HTTP file uploads.
; http://php.net/file-uploads
file_uploads = On
; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
; https://www.php.net/manual/en/ini.core.php#ini.upload-tmp-dir
upload_tmp_dir = "c:/wamp/tmp"
; Maximum allowed size for uploaded files.
; https://www.php.net/manual/en/ini.core.php#ini.upload-max-filesize
upload_max_filesize = 10M