Upload fichier WORD et EXCEL

Signaler
Messages postés
229
Date d'inscription
lundi 2 août 2010
Statut
Membre
Dernière intervention
25 juillet 2013
-
Messages postés
229
Date d'inscription
lundi 2 août 2010
Statut
Membre
Dernière intervention
25 juillet 2013
-
salut . j'ai un code qui marche tres bien pour upload une image mais je veux aussi uplaod un fichier WORD ou excel . comment m'y prende . merci d'avance. voici mon code php qui fonctionne bien pour les images.

<?php
//include('functions/declarant.func.php');
include('body/header.php');
include('body/menu.php');
?>
<?php

if(isset($_GET['id'])) $id = urldecode($_GET['id']);

if(isset($_POST['bouton_submit'])&& !empty($_POST['nbre'])){
 $cat = strip_tags(trim($_POST['cat'])); 
  
    for($i = 1; $i <= $_POST['nbre']; $i++){

if(isset($_FILES['img'.$i]) && $_FILES['img'.$i]['error'] == 0 && isset($_POST['nbre'])){
//elements pris  en parametres
$size_max = 2097152;	
$dossier = 'upload_fichier/';
$ext_array = array('jpg', 'png', 'bmp', 'gif', 'jpeg', 'doc', 'csv', 'xlsx');	
//donnees de $_FILES['']
$name = $_FILES['img'.$i]['name'];
$size = $_FILES['img'.$i]['size'];
$tmp = $_FILES['img'.$i]['tmp_name'];
$error = $_FILES['img'.$i]['error'];
$type_img = $_FILES['img'.$i]['type'];

//verifie s'il y a pas un fichier du meme nom qui a ete uploader
if(file_exists($dossier.$name)){
$erreur = 'un fichier du meme nom exite dejà';
}
//on verifie la taille du fichier
if($size > $size_max){
$erreur = 'image trop lourde veuillez choisir une image de plus ou moins $size_max ko';
}
//on verifie si le fichier a ete mis dans le repertoire temporaire avec la fction is_uploaded_file
if(!is_uploaded_file($tmp)){
$erreur = 'le fichier introuvable';
}
// verification de l'extension
$ext_val = substr(strtolower( $name),strrpos(strtolower( $name), ".")+1);
if(!in_array($ext_val, $ext_array)){
$erreur = "le fichier n'est pas une image ";
}
//verifie si le nom du fichier est valide
if(preg_match('#[\x00-\x1F\x7F-\x9F/\\\\]#', $name)){

$erreur = "nom de fichier invalide";
}
//avec move_uploaded_file verifie si le fichier a été deplacé  le repertoire de destination
else if(!move_uploaded_file($tmp, $dossier.$name)){
$erreur = " impossible de copier le fichier";
}
if(isset($erreur)){
    echo $erreur.'
';
    
}
else if(!isset($erreur) ){


/*on insere le chemin vers le ficihier uploade*/
      $fichier_choisi = $dossier.$name;
// on fait l'INSERT dans la base de données

//$sql= "INSERT INTO renseigner(fichier_choisi,id_victime) VALUES ('$fichier_choisi','$id_victime')";
      $sql= "INSERT INTO renseigner(fichier_choisi,id_victime) VALUES ('$fichier_choisi','$id')";
$result = mysql_query($sql) or die(mysql_error());
if (!$result) {
    	die('linsertion n a pas réussie !!! : ' . mysql_error());

}



   }

}

}
}
?>
<!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=iso-8859-1" />
<title>Document sans titre</title>
<style type="text/css">
<!--
.Style3 {
color: #0000FF;
font-weight: bold;
}
.Style4 {
color: #990033;
font-weight: bold;
}
.Style6 {color: #990000}
-->
</style>
</head>




Enregistrement des Courriers 


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


  Saisir le nombre de pages:,
"/>,   ----
,  <fieldset> <legend>AJOUTER DES DOCUMENTS </legend>
<?php if(isset($_POST['bouton_submit']) && ($_POST['nbre'])){ extract($_POST); $nbre_photo = $nbre; for($j = 1; $j<= $nbre_photo; $j++){ echo'
'; } } ?> </fieldset>

</form>


 



</html>

2 réponses

Messages postés
130
Date d'inscription
lundi 11 janvier 2010
Statut
Membre
Dernière intervention
7 juin 2013

Salut,

Perso, j'ai testé ton script sur mon poste ça fonctionne.
Par contre, si tu as mis les extensions de tes fichiers en majuscule c'est pas bon. Et si ton word c'est du docx, il n'est pas dans la liste.
Messages postés
229
Date d'inscription
lundi 2 août 2010
Statut
Membre
Dernière intervention
25 juillet 2013

merci pour ta reponse.
1. j'ai pas mis les extention en majuscule je sais pas ppourquoi tu parle de majuscule ou bien je saisi pas bien le conseil que tu me donne .
2. quelle est la liste de toutes les extentions word et excel