Simple class d'upload d'image

Soyez le premier à donner votre avis sur cette source.

Vue 4 546 fois - Téléchargée 329 fois

Description

upload.class simple à utiliser et comprendre, vous avez qu'a ajouter le taille maximum d'image
upload.class.php contient la class upload.
upload.php script de verification et qui fait appellé la class

Source / Exemple :


upload.class.php

class upload
{
private $img;
private $dir;

function __construct($img,$dir)
{
       $this->tmp_img = $_FILES[$img]['tmp_name'];
       $this->nom_img = $_FILES[$img]['name'];
       $this->type_img =$_FILES[$img]['type'];
	   $this->dossier=$dir;
}

function upload_image()
{
	if( !is_uploaded_file($this->tmp_img) )
    {   
	    $msg="vous avez rien uploader";
        return $msg;
    }
    elseif( !strstr($this->type_img, 'jpg') && !strstr($this->type_img, 'jpeg') && !strstr($this->type_img, 'bmp') && ! strstr($this->type_img, 'gif') )
    {
        $msg="le fichier n'est pas une image";
		return $msg;
    }
    elseif( !move_uploaded_file($this->tmp_img, $this->dossier . $this->nom_img) )
    {
	   $msg="impssible de copier le fichier";
       return $msg;
    }
	
	$msg="image envoyé";
	return $msg;
}
}//class

upload.php

session_start();
include "upload.class.php";
if(isset($_FILES['img']))
{
  
  $img='img';
  $dir='./dir/';
  $koko = new upload($img,$dir);
  $er= $koko->upload_image();
  
  $_SESSION['er']=$er;
  header("location: upload-img.php");
}

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Zer00CooL
Messages postés
11
Date d'inscription
samedi 23 septembre 2006
Statut
Membre
Dernière intervention
24 février 2017

Oui c'est intéressant pour les débutants et les personnes moins initiées de comprendre les aspects de sécurité. Peut tu commenter BJ33, pourquoi ce code n'est t'il pas sécuritaire ?

Merci néanmoins à son auteur pour le temps passé à travailler sur ça source, merci aussi à lui de prendre en compte les remarques et de modifier son code pour qu'il devienne fonctionnel :)

Promis moi aussi je poste un code un de ses jours.
bj33
Messages postés
145
Date d'inscription
vendredi 13 juin 2003
Statut
Membre
Dernière intervention
1 mai 2012

salut

à l'attention des débutants(es), n'utiliser surtout pas ces codes! en plus des autres remarques, je rajouterais quelle n'est pas sécurisée.filtrer l'extension de cette façon c'est très moyen.
mahlaoui
Messages postés
29
Date d'inscription
lundi 10 décembre 2007
Statut
Membre
Dernière intervention
13 octobre 2008

A revoir cher ami
cs_depression
Messages postés
100
Date d'inscription
mardi 7 novembre 2000
Statut
Membre
Dernière intervention
13 juillet 2009

Je pense que tu devrais retravailler ton code.

- Ta classe en l'état ne permet pas d'envoyer de PNG qui est pourtant un format d'image.
- Pas de limitation de taille.
- Une chose que je fais est de remplacer les accents par des caractères normaux quand je fais un script d'upload
- C'est trop court pour une classe, une fonction aurait pu suffir.
- Les doubles quotes, remplace-les par des simples quand cela est possible.
- Pourquoi session_start(); ?
- Ta classe ne permet pas de gérer les droits sur les fichiers envoyés.
- Ton niveau de français est à revoir.
webdeb
Messages postés
488
Date d'inscription
samedi 5 avril 2003
Statut
Membre
Dernière intervention
31 mars 2009
3
On récupère l'extension d'un fichier avec pathinfo() ;)

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.