JV43
Messages postés2Date d'inscriptionsamedi 15 décembre 2007StatutMembreDernière intervention 3 mars 2008
-
29 févr. 2008 à 19:22
JV43
Messages postés2Date d'inscriptionsamedi 15 décembre 2007StatutMembreDernière intervention 3 mars 2008
-
3 mars 2008 à 18:02
Bonsoir,
J'ai réussi des upload à partir de page html, mais cette fois-ci, le formulaire se trouve dans une page php.
Dans la page désignée par action j'obtiens bien dans $_FILES['image']['name'] le nom du fichier sélectionné
mais $_FILES['image']['tmp_name'] est vide et $_FILES['image']['size'] est == 0 (mais 'error' est OK
je montre :
page php appelante :
<form name="monform" enctype="multipart/form-data" method="post" action="verification.php" target="_self">
</form>
dans verification.php (entre autre)
if (is_uploaded_file($_FILES['file']['tmp_name'])) {
echo "fichier ".$_FILES['file']['name']."est téléchargé
";}
else {echo "le fichier".$_FILES['file']['name'].". n'est pas téléchargé";}
eh ben on obtient le fichier toto.jpg n'est pas téléchargé
qq a t'il la solution ?
merci d'avance beaucoup
JV43
audayls
Messages postés373Date d'inscriptionsamedi 9 juillet 2005StatutMembreDernière intervention11 août 2008 2 mars 2008 à 22:15
Salut,
Essaye ce fichier "verification.php" :
<?php
// On vérifie avec la fonction "isset" que le fichier envoyé existe.
// On vérifie avec la fonction "is_uploaded_file" que le fichier est bien un fichier "uploader".
// Si une de ses conditions est fausse on renvoie vers "formulaire.html".
if (!isset($_FILES['file']) OR !is_uploaded_file($_FILES['file']['tmp_name'])) header('Location: formulaire.html');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-type" content="text/html; charset=iso-8859-15" />
<title>Upload PHP</title>
</head>
<?php
// La variable "$sDirUpload" contient l'adresse du dossier où le fichier va être envoyer.
$sDirUpload = $_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['PHP_SELF']).'/';
// La fonction "move_upload_file" permet d'envoyer le fichier "uploader" vers le dossier "$sDirUpload".
// Si la fonction réussi on affiche "L'upload a réussi !".
// Si la fonction échoue on affiche "L'upload a échoué.".
if (move_uploaded_file($_FILES['file']['tmp_name'], $sDirUpload.$_FILES['file']['name'])) echo 'L\'upload a réussi !';
else echo 'L\'upload a échoué.';
?>
nellsy
Messages postés7Date d'inscriptionmercredi 11 avril 2001StatutMembreDernière intervention27 juin 2009 3 mars 2008 à 16:04
Tu peux toujours essayer quelque chose de ce type là si ca ne marche pas :
<?php
// Répertoire de stockage
$folder = "./dossier/";
// Taille maximum du fichier
$MAX_FILE_SIZE = 150000;
// Format autorisé dans l'upload de fichier
// Vérifier avec un $HTTP_POST_FILES['pFichier']['type'] le format utilisé par votre fichier
$allowed_types = array(
"application/octet-stream",
"application/pdf",
"image/bmp",
"image/gif",
"image/pjpeg",
"image/jpeg",
"image/jpg",
"multipart/x-zip",
"video/msvideo"
);
JV43
Messages postés2Date d'inscriptionsamedi 15 décembre 2007StatutMembreDernière intervention 3 mars 2008 3 mars 2008 à 18:02
Bonsoir à vous deux,
merci de votre contribution c'est vraiment sympa
bon, voilà en cherchant sur php.net j'ai trouvé la signification des codes d'erreur concernant les $_FILES et en fait les fichiers que je testais dépassaient le max_files se trouvant dans le fichier .htaccess, tout simplement
mais vos conseils m'ont permis d'améliorer mon code et c'est bien chouette comme ça
Bien cordialement
JPP