begin process at 2012 05 27 20:45:45
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Fichier / Disque

 > UPLOAD CHEZ FREE QUI MARCHE!!

UPLOAD CHEZ FREE QUI MARCHE!!


 Information sur la source

Note :
6,4 / 10 - par 5 personnes
6,40 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Fichier / Disque Classé sous :upload, fichier, mime, free, envoyer Niveau :Débutant Date de création :21/04/2004 Date de mise à jour :01/09/2006 10:01:22 Vu :20 778

Auteur : Nifhell

Ecrire un message privé
Site perso
Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note

 Description

Je me suis inspiré d'une fonction BCOPY créer par BeB3RePHPLover:
                  http://www.phpcs.com/code.aspx?ID=13332
Voilà un script qui permet d'uploader chez free ou n'importe ou ailleurs avec les contraintes:
-fonctionne avec php4 donc avec les sessions
-controle le type du fichier uploadé et non pas l'extension de ce dernier!!(sécurité)
-permet de renommer le fichier uploadé

Source

  • ------------------Le formulaire--------------------------------------------
  • echo "<form enctype='multipart/form-data' action='load_fic.php' method='POST'>";
  • echo "<div class=bouton align=left>Envoyez ce fichier :";
  • echo "<input name=userfile type=file class=bouton size=50>";
  • echo "<input type=submit value=\"Envoyer le fichier\" class=bouton></div>";
  • echo "</form>";
  • ----------------load_fic.php----le script--------------------------------------
  • function MAXFILESIZE() {
  • $max = 1024592; //taille en octet que tu definis toi meme
  • return $max;
  • }
  • //on controle si la taille du fichier n'est pas supérieur à celle autorisée par le serveur
  • if($_FILES['userfile']['error']==1)
  • {
  • echo "<h1 class=txt>Erreur:</h1><div align=center class=bouton>Le fichier téléchargé excède la taille autorisée par le serveur(>2Mb)</div>";
  • }
  • //on controle si la taille du fichier n'est pas supérieur à celle autorisée par le vous
  • //MAX_FILE_SIZE() est une fonction qui renvoie la taille max autorisée des fichiers
  • elseif($_FILES['userfile']['size']>MAX_FILE_SIZE())
  • {
  • echo "<h1 class=txt>Erreur:</h1><div align=center class=bouton>Le fichier téléchargé excède la taille autorisée:<br>Vous ne pouvez télécharger qu'un fichier dont la taille est inférieur à ".MAX_FILE_SIZE()." octets</div>";
  • }
  • //on gère si le fichier a été mal téléchargé
  • elseif($_FILES['userfile']['error']==3)
  • {
  • echo "<h1 class=txt>Erreur:</h1><div align=center class=bouton>Le fichier n'a été que partiellement téléchargé.</div>";
  • }
  • //on controle si y a un fichier a uploadé
  • elseif($_FILES['userfile']['error']==4)
  • {
  • echo "<h1 class=txt>Erreur:</h1><div align=center class=bouton>Aucun fichier n'a été téléchargé</div>";
  • }
  • //on controle le type du fichier, ici il fo que des *.JPG ou *.GIF
  • elseif($_FILES['userfile']['type']!="image/gif" && $_FILES['userfile']['type']!="image/pjpeg")
  • {
  • echo "<h1 class=txt>Erreur:</h1><div align=center class=bouton>Le fichier téléchargé n'est pas du type autorisé:<br>Vous ne pouvez télécharger qu'un fichier du type GIF(image/gif) ou JPEG(image/pjpeg)</div>";
  • }
  • //sinon c OK on commence la copie du fichier
  • else
  • {
  • // on récupère le type de l'image
  • if($_FILES['userfile']['type']=="image/pjpeg")
  • {
  • $_FILES['userfile']['type']="image/jpg";
  • }
  • $type=explode("/", $_FILES['userfile']['type']);
  • // on récupère l'extension appropriée
  • $ext=$type[1];
  • //on entre le chemin d'écriture du fichier
  • //on donne le nom voulue au fichier, ici avec le nom d'utilisateur de la session.
  • $nom_fic="/img/members/".$_SESSION['user']."_img.".$ext;
  • // on ouvre le fichier temporaire uploadé dans le répertoir temporaire du serveur
  • if($OpenLocal= fopen($_FILES['userfile']['tmp_name'], "rb"))
  • {
  • // lecture entière du fichier temporaire
  • $LocalFileContent = fread($OpenLocal, $_FILES['userfile']['size']);
  • }
  • else
  • {
  • fclose($OpenLocal);
  • die("<b>Erreur : </b>impossible d'ouvrir le fichier local '".$_POST['userfile'].".");
  • }
  • // Fermeture du fichier local
  • fclose($OpenLocal);
  • // Ouverture du fichier distant, si ce fichier existe, il sera écrasé
  • if($OpenRemote = fopen(".".$nom_fic, "wb"))
  • {
  • // Ecriture du fichier temporaire dans le fichier distant
  • if(fwrite($OpenRemote, $LocalFileContent))
  • {
  • fclose($OpenRemote);
  • }
  • }
  • else
  • {
  • fclose($OpenRemote);
  • die("<b>Erreur : </b>impossible d'ouvrir le fichier distant '".$nom_fic.".");
  • }
  • }
------------------Le formulaire--------------------------------------------
echo "<form enctype='multipart/form-data' action='load_fic.php' method='POST'>";
	echo "<div class=bouton align=left>Envoyez ce fichier :";
	echo "<input name=userfile type=file class=bouton size=50>";
	echo "<input type=submit value=\"Envoyer le fichier\" class=bouton></div>";
	echo "</form>";

----------------load_fic.php----le script--------------------------------------
function MAXFILESIZE() {
     $max = 1024592; //taille en octet que tu definis toi meme
     return $max;
}
//on controle si la taille du fichier n'est pas supérieur à celle autorisée par le serveur
if($_FILES['userfile']['error']==1)
{
	echo "<h1 class=txt>Erreur:</h1><div align=center class=bouton>Le fichier téléchargé excède la taille autorisée par le serveur(>2Mb)</div>"; 
}
//on controle si la taille du fichier n'est pas supérieur à celle autorisée par le vous
//MAX_FILE_SIZE() est une fonction qui renvoie la taille max autorisée des fichiers
elseif($_FILES['userfile']['size']>MAX_FILE_SIZE())
{
	echo "<h1 class=txt>Erreur:</h1><div align=center class=bouton>Le fichier téléchargé excède la taille autorisée:<br>Vous ne pouvez télécharger qu'un fichier dont la taille est inférieur à ".MAX_FILE_SIZE()." octets</div>"; 
}
//on gère si le fichier a été mal téléchargé
elseif($_FILES['userfile']['error']==3)
{
	echo "<h1 class=txt>Erreur:</h1><div align=center class=bouton>Le fichier n'a été que partiellement téléchargé.</div>"; 
}
//on controle si y a un fichier a uploadé
elseif($_FILES['userfile']['error']==4)
{
	echo "<h1 class=txt>Erreur:</h1><div align=center class=bouton>Aucun fichier n'a été téléchargé</div>"; 
}
//on controle le type du fichier, ici il fo que des *.JPG ou *.GIF
elseif($_FILES['userfile']['type']!="image/gif" && $_FILES['userfile']['type']!="image/pjpeg")
{
	echo "<h1 class=txt>Erreur:</h1><div align=center class=bouton>Le fichier téléchargé n'est pas du type autorisé:<br>Vous ne pouvez télécharger qu'un fichier du type GIF(image/gif) ou JPEG(image/pjpeg)</div>";
}
//sinon c OK on commence la copie du fichier
else
{
	// on récupère le type de l'image
	if($_FILES['userfile']['type']=="image/pjpeg")
	{
		$_FILES['userfile']['type']="image/jpg";
	}
	$type=explode("/", $_FILES['userfile']['type']);
                // on récupère l'extension appropriée
	$ext=$type[1];
	//on entre le chemin d'écriture du fichier
                //on donne le nom voulue au fichier, ici avec le nom d'utilisateur de la session.
	$nom_fic="/img/members/".$_SESSION['user']."_img.".$ext;
               // on ouvre le fichier temporaire uploadé dans le répertoir temporaire du serveur
	if($OpenLocal= fopen($_FILES['userfile']['tmp_name'], "rb"))
	{
	// lecture entière du fichier temporaire
		$LocalFileContent = fread($OpenLocal, $_FILES['userfile']['size']);
	}
	else
	{
		fclose($OpenLocal);
		die("<b>Erreur : </b>impossible d'ouvrir le fichier local '".$_POST['userfile'].".");
	}
	// Fermeture du fichier local
	fclose($OpenLocal);
	// Ouverture du fichier distant, si ce fichier existe, il sera écrasé   
	if($OpenRemote = fopen(".".$nom_fic, "wb"))
	{
		// Ecriture du fichier temporaire dans le fichier distant 
	        if(fwrite($OpenRemote, $LocalFileContent))
	        {
	        	fclose($OpenRemote);
                        }
	}
	else
	{
		fclose($OpenRemote);
		die("<b>Erreur : </b>impossible d'ouvrir le fichier distant '".$nom_fic.".");
	}
}

 Conclusion

Si vous avez des question->commentaires!!


 Historique

01 septembre 2006 09:57:31 :
MAJ mots clé + titre
01 septembre 2006 10:01:22 :
MAJ function

 Sources du même auteur

Source avec une capture [PHP5][POO][IMAP] UNE CLASSE POUR LIRE DES MAILS EN IMAP DE...
Source avec Zip [PHP5][POO] EXEMPLES DE SYSTEME DE CLASSE (HERITAGE, AGREGAT...
Source avec Zip Source avec une capture [PHP5][POO][JEUX] SUDOKU
Source avec Zip CRÉATION D'UN ESPACE MEMBRE AVEC MYSQL

 Sources de la même categorie

SUPPRESSION AUTOMATIQUE DES FICHIERS RAW ORPHELINS APRÈS UN ... par malokaff
UPLOADER DES FICHIER DANSUN DOSSIER, SÉCURISÉ AVEC MOT DE PA... par raizzo
COMPTEUR DE VISITES SUR FICHIER par pierreSabatier
FONCTION RECURSIVE DE DOSSIERS par tefa24600
Source avec Zip CONVERSION DES UNITÉS INFORMATIQUE (O, KIO, MIO, GIO, TIO...... par genetApt151

 Sources en rapport avec celle ci

UPLOADER DES FICHIER DANSUN DOSSIER, SÉCURISÉ AVEC MOT DE PA... par raizzo
Source avec Zip Source avec une capture A-ANNONCES VERSION PHP 5 par cod57
GESTION FTP (CLASSE) par shevabam
Source avec Zip Source avec une capture UPLOADER DE FICHIER PHP - AVEC GESTION DES FICHIERS par DiabloBros
UN UPLOAD SIMPLE MAIS QUI FONCTIONNE CHEZ FREE par cladx

Commentaires et avis

Commentaire de romalafrite le 21/04/2004 03:21:28

ya pas une équivalence pour  &lt;form enctype=multipart/form-data action=".spath()."/load_fic.php method=POST&gt; ?

J'aimerais inclure cette procédure dans une fonction dans un fichier à côté pour simplifier. Voici ce que j'essaie de faire

recup des données POSTées
transfert de la photo dans un dossier via la fonction transfert($photo) qui est définie dans config.php
recup du nom de fichier de la photo
insertion dans la bdd

Comment je fais avec ce script ?

Commentaire de Nifhell le 21/04/2004 22:12:29

je pige pas tres bien ce que tu veux dire, tu pourrais préciser?

Pour récupérer le nom de ton fichier uploadé utilise
$_FILES['userfile']['name']

pour plus d'info sur l'upload en php4 va sur le site:

http://www.nexen.net/docs/php/annotee/features.file-upload.post-method.php?lien=_files

je c pas si g repondu a ta question...

Commentaire de Lespiaucq le 23/02/2005 20:00:26

je n'arrive pas à faire marcher ton script sur free.La fonction .MAX_FILE_SIZE() n'existe pas ainsi que .spath(). Si tu as réussi à le faire marcher sur free j'aimerais bien que tu m'envoie ton fichier php ou que tu le poste sur le site.

Commentaire de Nifhell le 24/02/2005 19:02:27

MAXFILESIZE() et spath() sont des fonctions que tu écris toi meme: exemple pour maxfilesize:

function MAXFILESIZE() {
     $max = 1024592; //taille en octet que tu definis toi meme
     return $max;
}

function spath() {
return $_SERVER['DOCUMENTROOT']; //faut vérifier la syntaxe de cette variable globale
}

Commentaire de djflo99 le 13/04/2005 23:24:02

Parse error: parse error, unexpected T_DEC, expecting T_VARIABLE or '$' in /var/www/free.fr/2/6/bichri/upload.php on line 2

Commentaire de xactise le 20/04/2005 12:56:08

Merci pour cette source elle m'a beaucoup aider même si j'ai du modifier quelque truc car sa uploader que un seul fichier vu qu'il ont le meme nom
pour celui ki a des pb la perso moi g enlever le spath()
j'ai mis :
echo "<form enctype=multipart/form-data action='load_fic.php' method=POST>";
et pour ke les fichier uploader ont leur nom correcte j'ai mis une variable :
$file_name=$_FILES['userfile']['name'];
et j'ai changer sa :
$nom_fic="/img/members/".$_SESSION['user']."_img.".$ext;

en sa :
$nom_fic="/img/members/".$_SESSION['user']."$file_name";

voila et surtout n'oublier pa de creer le repertoire /img/members

Encore merci pour cette source have fun !! 8/10

Commentaire de kev077 le 06/12/2009 21:23:56

Bonjour, comment le faire fonctionner avec XWebDesignor? J'ai déjà essayer différente façon et ça me toujours du texte un peu partout. Pouvez-vous m'aider, please?
Voici mon site si vous voulez y faire un tour : http://kev077.free.fr/

+++

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Upload de fichier possible sur FREE ??? [ par Phrogg ] Hello, J'utilise un script PHP dans lequel j'utilise l'instruction HTML &lt;input type="file" name="fichier"&gt; Je récupère ensuite le fichier en PHP Upload sur Free [ par bgK ] lorsque j'essaie d'uploader un fichier,j'obtiens le message suivantWarning: Unable to access in upload.php on line 5la ligne 5 de upload.php : $des upload fichier socket [ par yvesyves ] Bonjour,Je m'explique en tant que passagé car je programme pas en php mais je le comprend :J'ai 2 formulaires html avec un bouton submit et un champ d URGENT!!!! Upload de fichier chez free [ par sjcbboy ] Bonjour à tous!Je viens de "finir " le site pour une association sportive. Et j'attend l'activation de ma base de donnée chez free pour pouvoir l'hébe temps d'attente pour upload de fichier [ par lafouine1986 ] Bonjour à toutes et tous !Voilà après plusieurs rehcerches et de nombreux tests non concluants plus tard, je viens demander votre aide !J'ai réalisé u Upload de fichier [ par Metabolicman ] Bonjour tout le monde,J'ai un petit problème avec l'upload de fichier dans mon script php.if(isset($_POST['envoyer'])){var_dump($_FILES);}&lt;form met Upload - Mail puis supression [ par zarkwer ] Bonjour, voilà je suis entrain de réaliser un ptit formulaire simpliste où l'utilisateur tape divers renseignements puis transmet si il le veux un fic correction d'un script upload image [ par smed79 ] bonjour,j'ai besoin de votre aide pour  modifier et corriger un script upload image. j'ai un probleme avec le message d'erreur pour la taille maximum upload d'image rebel [ par Ashada ] Bonjour tout le monde Je suis débutante en code (aussi bien en php que les autres) et je suis dans une grosse galère. Je vais essayer d'expliquer le p [PHP] upload de fichier par url [ par olvean ] bonjour voila je recherche un script qui upload un fichier a partir d'une url sur mon serveur merci d'avance


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,780 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales