La Communauté Webmaster  forum rss


  Forum-webmaster
  Technique - programmation
  PHP / MySQL
(Modérateurs: Shain, Jey, erwinol, Lilian, lauryv, ToToMaStEr)
  Upload image
« Précédent Suivant »
Pages: [1] Descendre
Répondre    Aviser des réponses    Envoyer le sujet    Imprimer
  Auteur  Sujet: Upload image  (Lu 872 fois)
Upload image
« sur: le 17-06-2005 a 16:10:01 »
arnaudb
Membre récent
*

Hors-Ligne

Messages: 59



Je suis un lama!

Voir le Profil
Répondre avec citation

Salut,

Voila j'ai besoin de faire un upload d'image via mon formulaire.
J'ai trouvé ce code issu d'un tuto et je l'ai adapter comme je pouvais.

Code:
if(isset($_FILES['photo']))
{
unset($erreur);
$extensions_ok = array('png', 'jpg', 'jpeg');
$taille_max = 100000;
$dest_dossier = 'photo_annonce/';
if( !in_array( substr(strrchr($_FILES['photo']['name'], '.'), 1), $extensions_ok ))
{
    echo "Veuillez sélectionner un fichier de type png, gif ou jpg !";
}
elseif( file_exists($_FILES['photo']['tmp_name'])
and filesize($_FILES['photo']['tmp_name']) > $taille_max)
{
    echo "Votre fichier doit faire moins de 100Ko !";
}
if(!isset($erreur))
{
$dest_fichier = basename($_FILES['photo']['name']);
$dest_fichier = strtr($dest_fichier,
      'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
      'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
      $dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier);
      $dest_fichier = $pseudo."_".md5($pseudo).$dest_fichier;
      move_uploaded_file($_FILES['photo']['tmp_name'], $dest_dossier . $dest_fichier);  }
}


Le probleme est que j'arrive à envoyer des gros fichier alors que la limite est à 100000.
Deuxiemement j'aimerais que mon script s'arrete sur une des erreur de l'upload.

Cordialement Arnaud

Rapporter au modérateur  

Re:Upload image
« Répondre #1 sur: le 17-06-2005 a 17:08:08 »
MFred
Habitué
***

Hors-Ligne

Sexe: Male
Messages: 340



Gnih ?
331567679 331567679
Voir le Profil    E-Mail
Répondre avec citation

Salut,

Essaye ca :
Code:
if(isset($_FILES['photo']))
{
unset($erreur);
$extensions_ok = array('png', 'jpg', 'jpeg');
$taille_max = 100000;
$dest_dossier = 'photo_annonce/';
if( !in_array( substr(strrchr($_FILES['photo']['name'], '.'), 1), $extensions_ok ))
{
    echo "Veuillez sélectionner un fichier de type png, gif ou jpg !";
}
elseif( file_exists($_FILES['photo']['tmp_name']) && $_FILES['photo']['size']>$taille_max)
{
    echo "Votre fichier doit faire moins de 100Ko !";
}
elseif(file_exists($_FILES['photo']['tmp_name']) && (!isset($erreur) || empty($erreur)) )
{
$dest_fichier = basename($_FILES['photo']['name']);
$dest_fichier = strtr($dest_fichier,
      'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
      'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
      $dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier);
      $dest_fichier = $pseudo."_".md5($pseudo).$dest_fichier;
      move_uploaded_file($_FILES['photo']['tmp_name'], $dest_dossier . $dest_fichier);  }
}

Explications : pour la taille du fichier, lors de l'upload, elle est stockée dans la variable $_FILES['fichier']['size'], et pour ne pas que la dernière partie s'execute, il faut remplacer le if par un else : si une condition précédente est vérifiée, ce morceau de code ne sera pas executé, donc pas d'upload.

Rapporter au modérateur  

"In a world without fences and walls, who needs Gates and Windows ?"


Jabber : mfred@jabber.fr / mfred.mail@gmail.com
Re:Upload image
« Répondre #2 sur: le 19-06-2005 a 13:15:22 »
dietbald
Membre récent
*

Hors-Ligne

Sexe: Male
Messages: 3



have a question ?

Voir le Profil    E-Mail
Répondre avec citation


if(isset($_FILES['photo']))
{
unset($erreur);
$extensions_ok = array('png', 'jpg', 'jpeg');

// ceci est la taille de fichier maximal

$taille_max = 100000;

//dossier dns lequel il enregistre tes fotos
$dest_dossier = 'photo_annonce/';


//Il controlle si l'extention du fichier est belle et bien une qui ce trouve dans $extension_ok si par exeple tu veux ajouter les fichier image targa il suffit d'ajouter 'tga' en haut la page
if( !in_array( substr(strrchr($_FILES['photo']['name'], '.'), 1), $extensions_ok ))
{
    echo "Veuillez sélectionner un fichier de type png, gif ou jpg !";
//si tu veux qu'il arrete d'executer le script apres avor affu-icher ce message tu peut utilise exit; ou die "message a afficher avant de c'arrete";


}
//controle de la taille
elseif( file_exists($_FILES['photo']['tmp_name']) && $_FILES['photo']['size']>$taille_max)
{
    echo "Votre fichier doit faire moins de 100Ko !";
}
//controle  si le fichier est belle et bien uploadé et si il n'y a pas d'erreur
elseif(file_exists($_FILES['photo']['tmp_name']) && (!isset($erreur) || empty($erreur)) )
{
$dest_fichier = basename($_FILES['photo']['name']);
//supprime les accent par les meme lettres sans accent
$dest_fichier = strtr($dest_fichier,
      'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
      'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
      $dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier);
      $dest_fichier = $pseudo."_".md5($pseudo).$dest_fichier;
      move_uploaded_file($_FILES['photo']['tmp_name'], $dest_dossier . $dest_fichier);  }
}


j'espere que ceci t'aidra

Rapporter au modérateur  

To be old and wise you first need to be young and stupid
Re:Upload image
« Répondre #3 sur: le 20-06-2005 a 12:33:54 »
arnaudb
Membre récent
*

Hors-Ligne

Messages: 59



Je suis un lama!

Voir le Profil
Répondre avec citation

Merci à vous.
Enfin mon script fonctionne à merveille.

@--------+

Rapporter au modérateur  
Répondre    Aviser des réponses    Envoyer le sujet    Imprimer
Pages: [1] Monter
« Précédent Suivant »
Sauter à: 

Votre statut : Invité
Vous devez être membre pour participer.
 
 
Let’s Encrypt : le certificat SSL gratuit
Tester votre site internet sur différents navigateurs
[WordPress] Des problèmes avec l’administration ?
Rappel : Mettez à jour vos CMS et vos sites E-commerce
Le .fr fête ses 25 années d’existence !
Mesurer votre audience en temps réel avec BubbleStat
Porter réclamation contre Google Panda ?
Zlio n’est plus …
 
 
 
 
 

Copyright (c) Devclic 2002 - 2026 - Tous droits réservés

creation site internet strasbourg