begin process at 2012 02 09 13:40:36
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Divers

 > 

Problème d'upload en php


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème d'upload en php

samedi 22 octobre 2005 à 19:24:48 | Problème d'upload en php

Adrien4

Bonjour,

j'ai trouvé un code php sur le net il y a quelques mois, que je ne retrouve plus.
Il fonctionnait, même chez free, mais après l'avoir "arrangé" a ma page, il est totalement mort ...
Pourriez-vous m'aider à resoudre ce problème ?
Merci d'avance, voici le code :

<?php
  $taille_octets_max = 2000000;

  if ($file_name == "none" || !$file_name)
  {
    $error="Veuillez selectionner un fichier à envoyer.";
  }
  elseif($_FILES['file_name']['size'] > $taille_octets_max)
  {
    $error="Le fichier doit peser moins de ".($taille_octets_max/1000000)." Mo.";
  }

  if ($error)
   {
  ?>
<?="<p><u><strong>".$error."</strong></u></p>"?>
</span></div>
<div align="left" class="bloc2" id="rapport">
<table width="405" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="65"> <div align="center" class="bloc" id="formulaire">
<form method="post" ENCTYPE="multipart/form-data">
<p align="left">
<input type="file" name="file_name2" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE2" value="<?=$taille_octets_max?>">
<input name="submit2" type="submit" onClick="this.value='Patientez ...'" value="Envoyer">
</p>
</form>
<div align="left"><span class="Titre">Notez bien :</span><span class="Style17"><br>
</span><span class="blancs"><font face="Verdana" color="#D9AC83"><span class="Titre"><img src="images/puces/p1.gif" width="4" height="8"></span></font>
les fichiers .zip, .rar et .exe seront suprim&eacute;s pour raison de s&eacute;curit&eacute;.<br>
<font face="Verdana" color="#D9AC83"><span class="Titre"><img src="images/puces/p1.gif" width="4" height="8"></span></font>
Seules les connexion haut-d&eacute;bit pourront envoyer un fichier de 2 Mo. </span></div>
</div></td>
</tr>
</table>
<?php
   }
  else
  {
   $dest_rep="upload/";
   $nom_img="".$_FILES['file_name']['name'];
   if(file_exists($dest_rep.$nom_img))
   {
    $nom_img = preg_replace("/\.([a-zA-Z]{3,4})$/i", "_".time().".\\1", $nom_img);
   }
   if (move_uploaded_file($_FILES['file_name']['tmp_name'], $dest_rep.$nom_img))
   {
    $url = "
http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF'])."/$dest_rep".$nom_img;
    ?>
<br/>
<table width="392" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="392"><span class="blancs">Le fichier a bien &eacute;t&eacute; t&eacute;l&eacute;charg&eacute;
sur notre serveur, nous vous remercions de l'aide que vous nous avez apport&eacute;.
</span> <table width="1" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="1">&nbsp;</td>
</tr>
</table></td>
</tr>
<tr>
<td><div align="left" class="blancs"><span class="Titre">Nom du fichier :</span>
<span class="blancs">
<?=$nom_img?>
</span><br />
<span class="Titre">Taille : </span> <span class="blancs">
<?=$_FILES['file_name']['size']/1000?>
</span> <span class="blancs"> Ko</span></div></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td><div align="left"> <span class="blancs"><font face="Arial, Helvetica, sans-serif">[
</font></span><font face="Arial, Helvetica, sans-serif"><span class="menu"><a href="index.htm" target="_parent" class="menu">Retour</a></span></font><span class="blancs"><font face="Arial, Helvetica, sans-serif">
]</font> </span></div></td>
</tr>
</table>
<br />
</div>
<span class="blancs">
<?php
   }
   else
   {
    print("Copie &eacute;chou&eacute;e : ".$_FILES['file_name']['error']."<br />");
    unlink($_FILES['file_name']['tmp_name']);
   }
  }
  ?>
<br>

dimanche 23 octobre 2005 à 04:05:12 | Re : Problème d'upload en php

monoceros01

Réponse acceptée !
Voila, il y avait trop de fautes pour les énumérer une par une

<?php

$taille_octets_max = 2097152;    // 2Mo = 2 x 1024 x 1024
$file_name = (isset($_FILES['file_name'])) ? $_FILES['file_name'] : "" ; //simplifier la variable $_FILES['file_name'] si elle est définie
$error = "";    // définir la variable pour que php ne se demande pas d'où elle vient :)

if (!$file_name)
{
    $error="Veuillez selectionner un fichier à envoyer.";
}
elseif($file_name['size'] > $taille_octets_max)
{
    $error="Le fichier doit peser moins de ".($taille_octets_max/1048576)." Mo.";
}

if ($error)
{
    echo("<p><u><strong>".$error."</strong></u></p>");
?>


</span>
    </div>
        <div align="left" class="bloc2" id="rapport">
            <table width="405" border="0" cellspacing="0" cellpadding="0">
                <tr>
                    <td height="65">
                        <div align="center" class="bloc" id="formulaire">
                            <form method="post" ENCTYPE="multipart/form-data">
                                <p align="left">
                                    <input type="file" name="file_name" enctype="multipart/form-data">
                                    <input type="hidden" name="MAX_FILE_SIZE" value="<?=$taille_octets_max?>">
                                    <input name="submit2" type="submit" onClick="this.value='Patientez ...'" value="Envoyer">
                                </p>
                            </form>
                        <div align="left">
                            <span class="Titre">Notez bien :</span><span class="Style17"><br></span>
                            <span class="blancs"><font face="Verdana" color="#D9AC83"><span class="Titre"><img src="images/puces/p1.gif" width="4" height="8"></span></font>les fichiers .zip, .rar et .exe seront suprim&eacute;s pour raison de s&eacute;curit&eacute;.<br>
                            <font face="Verdana" color="#D9AC83"><span class="Titre"><img src="images/puces/p1.gif" width="4" height="8"></span></font>
Seules les connexion haut-d&eacute;bit pourront envoyer un fichier de 2 Mo. </span>
                        </div>
                    </div>
                    </td>
                </tr>
            </table>

<?php
}
else
{

    if (is_uploaded_file($file_name["tmp_name"]))
    {
        $dest_rep = "upload/";
        $nom_img  = $file_name['name'];
        if(file_exists($dest_rep.$nom_img))
        {
            $nom_img = preg_replace("/\.([a-zA-Z]{3,4})$/i", "_".time().".\\1", $nom_img);
        }
        if (move_uploaded_file($file_name['tmp_name'], $dest_rep.$nom_img))
        {
            $url = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF'])."/".$dest_rep.$nom_img;
?>

<br/>
            <table width="392" border="0" cellspacing="0" cellpadding="0">
                <tr>
                    <td width="392"><span class="blancs">Le fichier a bien &eacute;t&eacute; t&eacute;l&eacute;charg&eacute; sur notre serveur, nous vous remercions de l'aide que vous nous avez apport&eacute;.</span>
                        <table width="1" border="0" cellspacing="0" cellpadding="0">
                            <tr>
                                <td width="1">&nbsp;</td>
                            </tr>
                        </table>
                    </td>
                </tr>
                <tr>
                    <td>
                        <div align="left" class="blancs">
                            <span class="Titre">Nom du fichier :</span><span class="blancs"><?=$nom_img?></span><br />
                            <span class="Titre">Taille : </span> <span class="blancs"><?=$file_name['size']/1024?></span> <span class="blancs"> Ko</span>
                        </div>
                    </td>
                </tr>
                <tr>
                    <td>&nbsp;</td>
                </tr>
                <tr>
                    <td>
                        <div align="left"> <span class="blancs"><font face="Arial, Helvetica, sans-serif">[</font></span><font face="Arial, Helvetica, sans-serif"><span class="menu"><a href="index.htm" target="_parent" class="menu">Retour</a></span></font><span class="blancs"><font face="Arial, Helvetica, sans-serif">]</font> </span>
                        </div>
                    </td>
                </tr>
            </table>
            <br />
            </div>
                <span class="blancs">
<?php
        }
        else
        {
            print("Copie &eacute;chou&eacute;e : ".$file_name['error']."<br />");
            @unlink($file_name['tmp_name']);    // Je le laisse, mais il me semble que le fichier temporaire est supprimé du serveur quoiqu'il arrive. J'ai rajouter @ pour éviter que cette ligne ne génère une erreur.
        }
    }
}
?>

<br>

Par contre, je serais toi, si le script est destinée à une zone public je vérifierais quel type de fichiers sont envoyer, car si on peut t'envoyer des fichier .php tel quel, des personnes mals intentionnées pourraient uploader et executer n'importe quel script sur ton site.
J'ai vérifié le script, il devrait fonctionner.

dimanche 23 octobre 2005 à 12:41:21 | Re : Problème d'upload en php

Adrien4

Le script marche parfaitement maibntenant, je t'en remerci 1000 fois monoceros01 !!
Cela dit, je ne refuserais pas un petit bout de scriptrefusant tel ou tel sorte de fichier (extention .exe ou .php justement)
J'ai bien vu les sources de ce site, mais je ne saurais pas l'adapter ...^^

Je te remerci en tout cas de l'aide énorme que tu viens de m'apporter !
Adrien
dimanche 23 octobre 2005 à 13:39:24 | Re : Problème d'upload en php

monoceros01

La tu te débrouille, j'ai corrigé ton script parce que je comptais faire le même genre de chose dans pas longtemps et que j'en avais jamais fait... mais bon ça va pas être bien difficile de vérifier l'extention du fichier que tu upload ;)
Tu vas y arriver =)
dimanche 23 octobre 2005 à 19:24:19 | Re : Problème d'upload en php

Adrien4

Aller, j'ai trouvé plus simple ...
Creer un fichier .htaccess qui empeche l'execution des fichiers et la lecture du dossier.

Adrien
dimanche 23 octobre 2005 à 19:38:42 | Re : Problème d'upload en php
dimanche 23 octobre 2005 à 21:00:10 | Re : Problème d'upload en php

Adrien4

Ce smiley veux dire quoi ? lol
C'est de l'ironie du genre ... "reve, ce serait trop facile comme ca."
ou "Bien trouvé !"  ?

Sur ce, bonne soirée :d
Adrien
dimanche 23 octobre 2005 à 21:18:31 | Re : Problème d'upload en php

monoceros01

non c'est un :) mais avec des grands yeux.... un peu d'originalité que diable!
dimanche 23 octobre 2005 à 22:36:59 | Re : Problème d'upload en php

Adrien4

Donc ... ?
Tu insinues quoi par "originalité" ?
Soit tu avoue ne pas y avoir pensé, soit tu dis ce qui cloche ! je suis sur que mon hypothese du htaccess n'est pas bonne, et que tu veux me le faire comprendre ... aller, dis moi ! :'(

Adrien
dimanche 23 octobre 2005 à 23:53:01 | Re : Problème d'upload en php

monoceros01

T'as un complexe de persecution toi hein XD
Nan serieux, j'avais pas d'arrière pensée o_o, en fait =) c un petit (mauvais) réflexe =)


1 2

Cette discussion est classée dans : file, img, error, name, eacute


Répondre à ce message

Sujets en rapport avec ce message

AIDEZ MOI PAR PITIÉ [ par Toolsweb ] Bon, j'ai ça  $taille_octets_max = 1048576; // Taille maxi du fichier, en octets.   if ($file_name == "none" || !$file_name)  {    $error="Sp&eacute;c redimension images a l'upload sans proportion [ par tynmar ] Bonjour tout le monde,J'aimerai modifier la taille d'une image à l'upload. J'ai écrit mon script d'upload et maintenant je n'arive pas à la redimensio parse erreur [ par hanlin ] je ne sais quoi faire pour regler ce probleme de "parse error" dans ce code...quelqu'un pourrait-il m'aider ?mysql_select_db($database_contact, $conta je patauge avec mon code !! [ par hanlin ] voila...je veux faire un formulaire d'inscription tout simple avec possibilité d'iploader un fichier doc ou pdf...j'utilise pour ça dreamweaver et je upload images [ par refkaben ] Bonjour à tous,je veux uploade une image, j'ai fait des recherches sur phpcs et j'ai eu ce code que j'ai adapté à mon cas.le problème c'est que ça fon upload photos [ par doberman_420 ] Bonjour à tous,   J'ai un petit probléme pour uploader les photos de mes annonces sur l'hébergeur payant que j'utilise depuis une semaine j'utilisais upload image [ par mariobotta ] bonjour,j'ai créer un système d'upload pour des image stocker dans une base de donnée .mon script fonctionne bien en local mais plus sur le net (je su problème d'upload [ par romiain ] Salut à tous, J'ai un problème avec mon upload, lorsque je charge une photo j'ai l'erreur suivante Notice: Undefined variable: name_file in c:\program question upload [ par romu58 ] Bonjour à tous,Débutant en PHP ,j'ai un scxcript upload pour mon forum mais le soucis j'arrive pas a avoir le lien de téléchargement apres voici le sc Probleme de changement de format image pour PHPeCard [ par kiki_cosmonaute ] Bonjour,je suis nouveau sur le forum et également dans le php,Voilà, j'ai télécharger le script PHPeCard (mais je sais pu où) et je voulais savoir si


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
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 : 3,479 sec (3)

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