PHP: validation des uploads

Fermé
basopro Messages postés 100 Date d'inscription vendredi 11 mars 2011 Statut Membre Dernière intervention 3 juin 2015 - 11 août 2011 à 20:29
 basopro - 15 août 2011 à 16:27
Salut les chers amis.
Au fait je suis un debutant aux langage PHP .
En efeft jai un petit soucis qui concerne surtout la validation des uploads. Apres avoir bien suivi un tuto sur le php, j'ais saisi moi meme le code et quand j'essai ,rien ne marche.
VOICI DONC MON CODE SOURCE de la page du formulaire.


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>essai de formulaire d'envoi de fichier</title>
</head>

<body>

<!-- section des formulairs-->

<form action="new.php" method="post" enctype="mulyipatr/form-data" >

<input type="text" name="Nom"/></br>
<input type="file"  name="fichier"/></br>
<input type="submit"  value="Envoyer"/>
</form>
</body>
</html>



ceci est le code source de la page qui recois les infos:


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>bannie_biblio</title>
</head>
<body>
 <!-- CE BLOC EST DESTINE AU CHARGEMENT ET VALIDATION D'UN FICHIER-->
 <?php 
 // VERIFIE SI LE FICHIER A ETE CHARGE ET SANS ERRUER
	if (isset($_FILES['fichier']) AND $_FILES['fichier']['error']==0)
	{
		// Si oui, je verifie si la taille ne depasse pas 1Mo
		  if ( $_FILES['fichier']['size'] <= 1000000)
		  
		 // Verification de l'extension du fichier concerné. EXP: C:\dossiers\images.jpeg
		 {
		   $infosfichier= pathinfo($_FILES['fichier']['name']);
		   
		   //je selection la partie qui nous interesse ici: L'EXTENSION DU FICHIER
		   $fichier_extension=$infosfichier['extesion'];
		   
		   // JE precise à la machine, les differentes extensions que j'autorisées aux utilisateurs dans un tableau
		   $autoriser_extension=array('jpg','jpeg','gif','png');
		   
		   // ici, je verifie si l'extension du fichier uploadé s'inscrtit dans le tableau des extensions autorisées.
		   if (in-array($fichier_extension , $autoriser_extension))
		   {
		   
			 //===Validaton du fichier si toutes les conditions precedentes sont verifiées.====
			 //aors je recupere le fichier dans le dossier temporaire et je leplace dans un nouveau dossier que j'ai nommé " uploads "
			 
			 move_uploaded_file( $_FILES['fichier']['tmp_name'], 'uploads/' . basename($_FILES['fichier']['name']));
			 
			 echo ' votre fichier'. basename($_FILES['fichier']['name']).' a ete charge avec succes!';		   
		   }
		 // s'il a eu probleme au niveua de l'exten,sion , ce message s'affiche.
			else {echo 'veillez selectionner un fichier avec l\'extension jpg, jpeg, gif, png';}
		   	
	     }
		// s'il a eu probleme au nivau de la taille, ce message s'affiche
		 else {echo 'Veillez selectioner un fichier dont le taille ne depasse pas 1Mo';}	
	
	}
	// si le chargement n'est pâs effectué ou il y a eu erreur, ce message s'affiche
	else {echo 'erreur lors du chargement ou aucun fichier  ete selectionne';}	
 ?>

 
</body>
</html>


PROBLEME: chaque fois que ,je fais un upload c'est le dernier message qui s'aafiche
ce qui veut dire qu'il a eu probleme de chargement ou erreur!!!

JE SOLICITE DONC VOTRE EXPERTISE SINON VOTRE AIDE POUR ME SORTIR DE CE TROU

??????????????????????????Merci????????????????????????????????????????
A voir également:

1 réponse

avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
11 août 2011 à 23:32
Salut,

En voilà un code fort commenté.
La plupart des lignes sont explicites, il faut éviter de mettre trop de commentaires.

- Essaie avec in_array à la place de in-array
- « $fichier_extension = $infosfichier['extesion']; » : regarde bien
1
avion f16
je te remerci pour ton aide.Merci
0