Votre question

Probleme d'upload

Tags :
  • Script
  • Programmation
Dernière réponse : dans Programmation
10 Avril 2009 16:18:06

salut,
je voulais ecrire un script qui me permet d'uploader une image ou un logo, pour mettre dans mon site



voici le script

<?php

//
// Fonction trouvée dans la documentation de la fonction ini_get()
//
function return_bytes($val) {
$val = trim($val);
$last = strtolower($val{strlen($val)-1});
switch($last) {
// The 'G' modifier is available since PHP 5.1.0
case 'g':
$val *= 1024;
case 'm':
$val *= 1024;
case 'k':
$val *= 1024;
}

return $val;
}

define('MAX_FILE_SIZE', return_bytes(ini_get('post_max_size')));

if(!empty($_FILES)){
//
// Debug
//
echo '<pre>';
print_r($_FILES);
echo '</pre>';

//
// Récupération normale des informations
//
if(is_uploaded_file($_FILES['attached_file']['tmp_name'])){
$name = $_FILES['attached_file']['name'];
$tmp_name = $_FILES['attached_file']['tmp_name'];
$error = $_FILES['attached_file']['error'];

//
// Type mime du fichier
//
if(function_exists('mime_content_type')){
// Notre système nous permet de déterminer le type réel
$type = mime_content_type($tmp_name);
}
else{
// Nous sommes contraints à faire confiance à l'internaute
$type = $_FILES['attached_file']['type'];
}

//
// Gestion des erreurs éventuelles
//
switch($error){
case UPLOAD_ERR_OK:
$error_string = 'Fichier correctement reçu';
break;

case UPLOAD_ERR_INI_SIZE:
$error_string = 'Fichier trop volumineux (php.ini)';
break;

case UPLOAD_ERR_FORM_SIZE:
$error_string = 'Fichier trop volumineux (MAX_FILE_SIZE)';
break;

case UPLOAD_ERR_PARTIAL:
$error_string = 'Fichier partiellement envoyé';
break;

case UPLOAD_ERR_NO_FILE:
$error_string = 'Fichier non envoyé';
break;

case UPLOAD_ERR_NO_TMP_DIR:
$error_string = 'Pas de répertoire temporaire';
break;

case UPLOAD_ERR_CANT_WRITE:
$error_string = "Impossible d'écrire sur le disque";
break;
}


//
// Debug
//
echo '<pre>';
print_r(array(
'name' => $name,
'type' => $type,
'error' => $error,
'size' => filesize($tmp_name),
'tmp_name' => $tmp_name,
'error_string' => $error_string
));
echo '</pre>';
}
}

?>

<form method="post" action="<?php echo basename(__FILE__); ?>" enctype="multipart/form-data">

<input type="hidden" name="MAX_FILE_SIZE" value="<?php echo MAX_FILE_SIZE; ?>" />
<label>Fichier joint : <input type="file" name="attached_file" /></label><br /><br />

<input type="submit" value="Envoyer" />
<input type="reset" value="Rétablir" />
</form>

</body>
</html>


met lorsque je clique sur envoyé voici ce qui apparait



Actualités Menu Design Configuration Evenement

Array
(
[attached_file] => Array
(
[name] => Hiver.jpg
[type] => image/jpeg
[tmp_name] => C:\wamp\tmp\php62.tmp
[error] => 0
=> 105542
)

)
est ce que quelqu un peut m'aidé c'est tres urgents

merci encore.

Autres pages sur : probleme upload

10 Avril 2009 17:50:52

trop dur de chercher un peut :

// Debug
//
echo '<pre>';
print_r(array(
'name' => $name,
'type' => $type,
'error' => $error,
'size' => filesize($tmp_name),
'tmp_name' => $tmp_name,
'error_string' => $error_string
));
echo '</pre>';

tu commente ces lignes.
m
0
l
10 Avril 2009 17:51:20

et
// Debug
//
echo '<pre>';
print_r($_FILES);
echo '</pre>';
m
0
l
10 Avril 2009 18:10:50

ca na rien changer , toujours pareil , il m'affiche


Array
(
[name] => Collines.jpg
[type] => image/jpeg
[error] => 0
=> 28521
[tmp_name] => C:\wamp\tmp\phpE0.tmp
[error_string] => Fichier correctement reçu
)
m
0
l
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS