Undefine index:fichier

Fermé
otchouck Messages postés 54 Date d'inscription mercredi 12 novembre 2008 Statut Membre Dernière intervention 1 juillet 2019 - 1 août 2015 à 09:53
 Otchouck - 1 août 2015 à 22:54
Bonjour,
je suis novice en php et depuis plusieurs heure ma page web m'affiche plusieurs fois ce message: undefine index:fichier in c:\program Files\easyPHP-5.3.8.1\www\... quand j'execute ce code:

<?php
include ("connexion.php");

mysql_select_db("excell_ivoire");//selection de la base de données

if (isset($_POST['nom']))
{
echo ('test1');
$maxsize=1048576;
if ($_FILES['fichier']['error'] > 0) {
$erreur = "Erreur lors du transfert";
}
if ($_FILES['fichier']['size'] > $maxsize){
$erreur = "Le fichier est trop gros";
}
if ($_FILES['fichier']['size'] > $maxsize) {
$erreur = "Le fichier est trop gros";
}
$extensions_valides = array( 'doc', 'docx', 'pdf', 'jpg' , 'jpeg' , 'gif' , 'jpg' );
//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['fichier']['name'], '.') ,1) );
if ( in_array($extension_upload,$extensions_valides) ){
echo "Extension correcte";
}
//Créer un dossier 'upload/1/'
//mkdir('upload/1/', 0777, true);

//Créer un identifiant difficile à deviner
//$nom = md5(uniqid(rand(), true));
$nom = "{$_FILES['fichier']['name']}.{$extension_upload}";

$uploads_dir='/upload';

$nom_uploadeur=$_POST['nom'];
$email=$_POST['email'];
$contact=$_POST['contact'];

$save= mysql_query("INSERT INTO uploadeur(nom,email,contact) VALUE('$nom_uploadeur','$email','$contact')");
$resultat = move_uploaded_file($_FILES['fichier']['tmp_name'],$uploads_dir.$nom);
if ($resultat) {echo "Transfert réussi";} else {echo " erreur de transfert";}
}
?>

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>

<body>

<font align="center">
<h2 id="upload" > Télécharger un fichier vers le site </h2> <br>

<br> <font color="blue">remplir le formulaire ci-dessous </font><h2><br></h2>

<form method="post" action="fin_upload.php" enctype="multipart/form-data>
<p>
</p> <p>
<label for="nom"> Votre Nom et prénoms </label> <br> <input type="text" name="nom" id="nom" size="40" value=''/>
</p> <p>
<label for="email"> Email </label> <br> <input type="text" name="email" id="email" size="30" value=''/>
</p> <p>
<label for="contact"> Contact cel. </label> <br> <input type="text" name="contact" id="numero" size="10" value=''/>
</p> <p>
<input type="hidden" name="MAX_FILE_SIZE" value="1048576">
<label for="fichier"> fichier (uniquement de type doc, docx, pdf, jpg ou jpeg ) </label> <br> <input type="file" name="fichier" />
</p> <p>
<input type="submit" value="Envoyer le fichier" />
</font>

vos reponses me seront d'une grande aide

</body>

1 réponse

Utilisateur anonyme
1 août 2015 à 11:44
Alors je sias pas si c'est un mauvais copier coller, mais

<form method="post" action="fin_upload.php" enctype="multipart/form-data> 


Il manque un " après form-data

Et le formulaire ne semble pas fermer.

Après pour tester ce que contient la variable $_FILES le mieux est de faire un var_dump($_FILES) au début du PHP;
0
Merci zeNairolf il manquait effectivement un " .ca marche maintenant.
0