Upload de fichier
Résolu
Unnamed_Man
Messages postés
42
Date d'inscription
Statut
Membre
Dernière intervention
-
Unnamed_Man Messages postés 42 Date d'inscription Statut Membre Dernière intervention -
Unnamed_Man Messages postés 42 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Upload de fichier
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
4 réponses
Bonjour,
.... normalement.. juste avec ça tu devrais trouver l'erreur.
name='file'/>
$_FILES['filetest']
.... normalement.. juste avec ça tu devrais trouver l'erreur.
Merci pour ta réponse.
Effectivement faute d'inattention mais malheureusement il y a toujours une autre erreur, et quand j'affiche le contenu de $_FILES['filetest'], j'ai une erreur de type "Undefined Index" ... Je comprends vraiment pas et pourtant j'ai même utilisé des scripts déjà faits ( eh oui je me suis mis dans la peau dans script kiddie, j'en suis arrivé la :| ) en changeant les noms de fichiers mais le problème persiste ...
Effectivement faute d'inattention mais malheureusement il y a toujours une autre erreur, et quand j'affiche le contenu de $_FILES['filetest'], j'ai une erreur de type "Undefined Index" ... Je comprends vraiment pas et pourtant j'ai même utilisé des scripts déjà faits ( eh oui je me suis mis dans la peau dans script kiddie, j'en suis arrivé la :| ) en changeant les noms de fichiers mais le problème persiste ...
Mes scripts modifiés :
HTML :
<!DOCTYPE html>
<html>
<head>
<title>TestUpload</title>
<meta charset="utf-8">
</head>
<body>
<form action='second.php' method='post' enctype='mutlipart/form-data'>
<p>
<Label for='filetest'>Envoyer votre fichier : </Label>
<input type='file' name='filetest' id='filetest'/>
</p>
<input type='submit' value='Envoyer'/>
</form>
</body>
</html>
PHP :
<!DOCTYPE html>
<html>
<head>
<title>UploadedFile</title>
<meta charset="utf-8">
</head>
<body>
<?php
// On vérifie si le fichier a été envoyé
if (isset($_FILES['filetest']) AND $_FILES['filetest']['error'] == 0)
{
// On vérifie que la taille du fichier est inférieure à 8 Mo
if ($_FILES['filetest']['size'] <= 8000000)
{
// On récupère l'extension du fichier
$infos_fichier = pathinfo($_FILES['filetest']['name']);
$extension_fichier = infos_fichier['extension'];
// On vérifie l'extension du fichier
$extensions_autorisees = array('jpg','jpeg','gif','png');
if (in_array($extension_fichier, $extensions_autorisees))
{
move_uploaded_file($_FILES['filetest']['tmp_name'], 'uploads/'.basename($_FILES['filetest']['name']));
// On affiche un message pour dire que le fichier a été envoyé
echo 'Le fichier a bien été envoyé.';
}
else
{
echo 'ERROR 1';
}
}
else
{
echo 'ERROR 2';
}
}
else
{
echo 'ERROR 3';
var_dump($_FILES);
}
?>
<p><a href="test.php">Page de login</a></p>
</body>
</html>
Concernant la fonction var_dump($_FILES), elle retourne ''vide'' et j'ai bien un input ''submit'' dans mon script HTML. J'ai l'impression que la liaison entre le script HTML et le script PHP ne se fait pas.
HTML :
<!DOCTYPE html>
<html>
<head>
<title>TestUpload</title>
<meta charset="utf-8">
</head>
<body>
<form action='second.php' method='post' enctype='mutlipart/form-data'>
<p>
<Label for='filetest'>Envoyer votre fichier : </Label>
<input type='file' name='filetest' id='filetest'/>
</p>
<input type='submit' value='Envoyer'/>
</form>
</body>
</html>
PHP :
<!DOCTYPE html>
<html>
<head>
<title>UploadedFile</title>
<meta charset="utf-8">
</head>
<body>
<?php
// On vérifie si le fichier a été envoyé
if (isset($_FILES['filetest']) AND $_FILES['filetest']['error'] == 0)
{
// On vérifie que la taille du fichier est inférieure à 8 Mo
if ($_FILES['filetest']['size'] <= 8000000)
{
// On récupère l'extension du fichier
$infos_fichier = pathinfo($_FILES['filetest']['name']);
$extension_fichier = infos_fichier['extension'];
// On vérifie l'extension du fichier
$extensions_autorisees = array('jpg','jpeg','gif','png');
if (in_array($extension_fichier, $extensions_autorisees))
{
move_uploaded_file($_FILES['filetest']['tmp_name'], 'uploads/'.basename($_FILES['filetest']['name']));
// On affiche un message pour dire que le fichier a été envoyé
echo 'Le fichier a bien été envoyé.';
}
else
{
echo 'ERROR 1';
}
}
else
{
echo 'ERROR 2';
}
}
else
{
echo 'ERROR 3';
var_dump($_FILES);
}
?>
<p><a href="test.php">Page de login</a></p>
</body>
</html>
Concernant la fonction var_dump($_FILES), elle retourne ''vide'' et j'ai bien un input ''submit'' dans mon script HTML. J'ai l'impression que la liaison entre le script HTML et le script PHP ne se fait pas.
Bonjour,
Aucun souci avec ce code
Assures toi que tes fichiers sont bien encodés en utf8 sans bom
(voir chapitre 1 de ce lien : https://forums.commentcamarche.net/forum/affich-37584944-php-html-caracteres-accentues-et-l-utf8 )
Penses aussi à bien vider le cache de ton navigateur;
Aucun souci avec ce code
<!DOCTYPE html> <html> <head> <title>TestUpload</title> <meta charset="utf-8"> </head> <body> <form action="second.php" method="post" enctype="multipart/form-data"> <p> <Label for='filetest'>Envoyer votre fichier : </Label> <input type='file' name='filetest' id='filetest' /> </p> <input type='submit' value='Envoyer'/> </form> </body> </html>
Assures toi que tes fichiers sont bien encodés en utf8 sans bom
(voir chapitre 1 de ce lien : https://forums.commentcamarche.net/forum/affich-37584944-php-html-caracteres-accentues-et-l-utf8 )
Penses aussi à bien vider le cache de ton navigateur;