Php upload sous linux
Résolu
spacm
Messages postés
143
Statut
Membre
-
spacm Messages postés 143 Statut Membre -
spacm Messages postés 143 Statut Membre -
Bonjour,
Je cherche à utiliser les fonctions d'upload en php (avec apache 2 sous debian lenny), et j'ai donc voulu fair eun test avec le script joint ci-dessous. Je n'obtiens aucun message d'erreur, la variable $_FILES se remplis correctement, avec un code erreur 0: (pas d'erreur)
Cependant, pas moyen de mettre la main sur ce soi-disant fichier uploadé.
Pour info: j'ai la main sur le serveur, upload_tmp_dir est indéfini, mais j'ai fait d'autres essais en lui donnant une valeur.
1) si vous savez ou se trouve l'upload dir par défaut
2) Si quelqu'un a une idée de piste à explorer
Je l'en remercie d'avance.
Comme vous pouvez le constater, certaines parties sont commentées (je ne cherche pa sencore à déplacer ou renommer le fichier reçu)
la fonction message fait juste un affichage un peu plus élaboré que echo().
et ce qui m'est renvoyé par le navigateur:
Je cherche à utiliser les fonctions d'upload en php (avec apache 2 sous debian lenny), et j'ai donc voulu fair eun test avec le script joint ci-dessous. Je n'obtiens aucun message d'erreur, la variable $_FILES se remplis correctement, avec un code erreur 0: (pas d'erreur)
Cependant, pas moyen de mettre la main sur ce soi-disant fichier uploadé.
Pour info: j'ai la main sur le serveur, upload_tmp_dir est indéfini, mais j'ai fait d'autres essais en lui donnant une valeur.
1) si vous savez ou se trouve l'upload dir par défaut
2) Si quelqu'un a une idée de piste à explorer
Je l'en remercie d'avance.
Comme vous pouvez le constater, certaines parties sont commentées (je ne cherche pa sencore à déplacer ou renommer le fichier reçu)
la fonction message fait juste un affichage un peu plus élaboré que echo().
<?php ?>
<head>
<title>
test upload
</title>
<link rel="Stylesheet" href="../css/styles_globaux.css" type="text/css" />
</head>
<body>
<?php
//config
include '../config.php';
// inclusion de bibliothèques
for($i=0;$i<count($dConfig['includes']);$i++){
include("../".$dConfig['includes'][$i]);
echo $dConfig['includes'][$i];
}//for
?>
/****form_upload******/
<form method="post" enctype="multipart/form-data" action="test_upload.php">
<p>
<input type="file" name="fichier" size="30">
<input type="submit" name="upload" value="Envoyer">
</p>
</form>
/***** reponse_upload ********/</br>
<?php
if ( isset($_POST['upload']) ) // si formulaire soumis
{
message(print_r($_FILES));
$content_dir = 'upload/'; // dossier où sera déplacé le fichier
$tmp_file = $_FILES['fichier']['tmp_name'];
message('Contenu $_FILES[\'fichier\'][\'tmp_name\']:'.$_FILES['fichier']['tmp_name']);
if( !is_uploaded_file($tmp_file) )
{
exit("Le fichier n'a pas été uploadé");
}
// on vérifie maintenant l'extension
$type_file = $_FILES['fichier']['type'];
if( !strstr($type_file, 'csv') )
{
exit("Le format attendu est un csv");
}
// on copie le fichier dans le dossier de destination
$name_file = $_FILES['fichier']['name'];
// if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )
// {
// exit("Impossible de copier le fichier dans $content_dir");
// }
echo "Le fichier a bien été uploadé";
}
?>
</body>
et ce qui m'est renvoyé par le navigateur:
include/bd.incfonctions.php/****form_upload******/ ici affichage du form d'upload /***** reponse_upload ********/ Array ( [fichier] => Array ( [name] => 243_liste_usagers_Athis Mons__2008_12_02__11.38.csv [type] => text/csv [tmp_name] => /tmp/phpfOSfng [error] => 0 [size] => 126340 ) ) 1 Contenu $_FILES['fichier']['tmp_name']:/tmp/phpfOSfng Le fichier a bien été uploadé
A voir également:
- Php upload sous linux
- Upload video youtube - Télécharger - Diffusion
- Linux reader - Télécharger - Stockage
- Easy php - Télécharger - Divers Web & Internet
- Toutou linux - Télécharger - Systèmes d'exploitation
- R-linux - Télécharger - Sauvegarde
3 réponses
pas encore bien compris, mais a priori, il y a bien de l'upload qui s'effectue...
Je ne sais pas où va le fichier temporaire (ça m'intéresse, d'ailleurs, si quelqu'un a une idée, sachan que mon php.ini est celui par défaut sur debian lenny); cependant, je peux accéder au fichier uploadé...
Je ne sais pas où va le fichier temporaire (ça m'intéresse, d'ailleurs, si quelqu'un a une idée, sachan que mon php.ini est celui par défaut sur debian lenny); cependant, je peux accéder au fichier uploadé...
Bonsoir,
Contenu $_FILES['fichier']['tmp_name']:/tmp/phpfOSfng
ça vaut dire que ton fichier est temporairement uploadé dans le rep /tmp sou sle nom php.......
mais d'une part tu fait move_uploaded_file donc il est transféré en changeant de nom et de plus il est killé automatiquement à la fin du script php
Contenu $_FILES['fichier']['tmp_name']:/tmp/phpfOSfng
ça vaut dire que ton fichier est temporairement uploadé dans le rep /tmp sou sle nom php.......
mais d'une part tu fait move_uploaded_file donc il est transféré en changeant de nom et de plus il est killé automatiquement à la fin du script php