Bonjour, j'aimerais upload un fichier en php sauf que je ne comprends pas pourquoi mon code ne fonctionne pas , je suis bloquée depuis plusieurs jours alors j'espère que quelqu'un pourra m'aider ! Merci d'avance =)
Je dois pouvoir en fait récupérer des adresses mail noté dans un fichier.csv et ensuite via ma base de données j'affiche les informations des personnes possédant tel ou tel adresse mail. J'y arrive mais il faut que le fichier.csv se trouve au même endroit que mes page.php (mon dossier "CSV"). Le problème est que les utilisateurs vont chercher les fichiers.csv sur leur ordinateur donc il faut que je puisse uploader les fichiers vers ce dossier "CSV". Je ne sais pas si je suis suffisamment clair. Voilà.
Voici mon code pour le upload:
email.php :
import_csv.php :
if ($_FILES['fich']['size'] > $maxsize)
{
echo "maxsize = ".$maxsize."<br/>";
echo "Le fichier est trop gros";
}
if ($_FILES['fich']['error'] > 0) $erreur = "Erreur lors du transfert";
$extensions_valides = array('csv');
$extension_upload = strtolower(substr(strrchr($_FILES['fich']['name'], '.') ,1) );
if (in_array($extension_upload,$extensions_valides) ) echo "<br/>Extension correcte";
$nom = "/var/www/html/essai_csv/";
echo "<br/>nom = ".$nom;
$resultat = move_uploaded_file($tmpName,$nom,0777);
if ($resultat)
{
echo "<br/>Transfert réussi";
}else {
echo "<br/>Echec transfert";
}
?>[/code]
Je dois pouvoir en fait récupérer des adresses mail noté dans un fichier.csv et ensuite via ma base de données j'affiche les informations des personnes possédant tel ou tel adresse mail. J'y arrive mais il faut que le fichier.csv se trouve au même endroit que mes page.php (mon dossier "CSV"). Le problème est que les utilisateurs vont chercher les fichiers.csv sur leur ordinateur donc il faut que je puisse uploader les fichiers vers ce dossier "CSV". Je ne sais pas si je suis suffisamment clair. Voilà.
Voici mon code pour le upload:
email.php :
<?php
echo "<!DOCTYPE html>
<head>
<title> Fichier csv </title>
</head>
<body>
<form method=\"post\" action=\"import_csv.php\" enctype=\"multipart/form-data\">
<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"100000\" />
<input type=\"file\" name=\"fich\" id=\"fich\"/><br/><br/>
<input type=\"submit\" id=\"importer\" name=\"importer\" value=\"Importer\"/>
</form>
</body>
</html>";
?>
import_csv.php :
<?php
// echo phpinfo();
print_r($_FILES);
$name = $_FILES['fich']['name']; //Le nom original du fichier, comme sur le disque du visiteur (exemple : mon_icone.png).
$type = $_FILES['fich']['type']; //Le type du fichier. Par exemple, cela peut être « image/png ».
$size = $_FILES['fich']['size']; //La taille du fichier en octets.
$tmpName = $_FILES['fich']['tmp_name']; //L'adresse vers le fichier uploadé dans le répertoire temporaire.
$error = $_FILES['fich']['error']; //Le code d'erreur, qui permet de savoir si le fichier a bien été uploadé.
$maxsize = $_POST['MAX_FILE_SIZE'];
echo "name = ".$name."<br/>";
echo "type = ".$type."<br/>";
echo "size = ".$size."<br/>";
echo "tmpName = ".$tmpName."<br/>";
echo "error = ".$error."<br/>";[code=php]
if ($_FILES['fich']['size'] > $maxsize)
{
echo "maxsize = ".$maxsize."<br/>";
echo "Le fichier est trop gros";
}
if ($_FILES['fich']['error'] > 0) $erreur = "Erreur lors du transfert";
$extensions_valides = array('csv');
$extension_upload = strtolower(substr(strrchr($_FILES['fich']['name'], '.') ,1) );
if (in_array($extension_upload,$extensions_valides) ) echo "<br/>Extension correcte";
$nom = "/var/www/html/essai_csv/";
echo "<br/>nom = ".$nom;
$resultat = move_uploaded_file($tmpName,$nom,0777);
if ($resultat)
{
echo "<br/>Transfert réussi";
}else {
echo "<br/>Echec transfert";
}
?>[/code]