[RESOLUE]Erreur 404 avec un script php de miniature d'image

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par chili palmer, 10 Avril 2006.

  1. chili palmer
    chili palmer WRInaute discret
    Inscrit:
    16 Décembre 2005
    Messages:
    93
    J'aime reçus:
    0
    Bonjour,

    j'ai récupéré un script qui génère une miniature, mais au moment de la Downloader, je recupere une erreur 404 !
    Pouvez-vous m'aider à résoudre ce problème.

    Code:
    // GESTION DU TÉLÉCHARGEMENT
    
    if(!empty($_GET["dwn"])) {
       if(!strpos(" ".$_GET["dwn"],"..")) { // protection ;)
          header("content-type: application/octet-stream");
          $f = substr($_GET["dwn"],strrpos($_GET["dwn"],"/")+1);
          header("Content-Disposition: attachment; filename=".$f);
          flush(); // Envoie le buffer
          readfile($_GET["dwn"]);   
       }
    
    // CREATION DE LA VIGNETTE
    
    } else {
    
    function redimage($img_src,$img_dest,$dst_w,$dst_h) {
       // Lit les dimensions de l'image
       $size = GetImageSize($img_src);  
       $src_w = $size[0]; $src_h = $size[1];  
       // Teste les dimensions tenant dans la zone
       $test_h = round(($dst_w / $src_w) * $src_h);
       $test_w = round(($dst_h / $src_h) * $src_w);
       // Si Height final non précisé (0)
       if(!$dst_h) $dst_h = $test_h;
       // Sinon si Width final non précisé (0)
       elseif(!$dst_w) $dst_w = $test_w;
       // Sinon teste quel redimensionnement tient dans la zone
       elseif($test_h>$dst_h) $dst_w = $test_w;
       else $dst_h = $test_h;
    
       // La vignette existe ?
       $test = (file_exists($img_dest));
       // L'original a été modifié ?
       if($test)
          $test = (filemtime($img_dest)>filemtime($img_src));
       // Les dimensions de la vignette sont correctes ?
       if($test) {
          $size2 = GetImageSize($img_dest);
          $test = ($size2[0]==$dst_w);
          $test = ($size2[1]==$dst_h);
       }
    
       // Créer la vignette ?
       if(!$test) {
          // Crée une image vierge aux bonnes dimensions
          // $dst_im = ImageCreate($dst_w,$dst_h);
          $dst_im = ImageCreateTrueColor($dst_w,$dst_h); 
          // Copie dedans l'image initiale redimensionnée
          $src_im = ImageCreateFromJpeg($img_src);
          // ImageCopyResized($dst_im,$src_im,0,0,0,0,$dst_w,$dst_h,$src_w,$src_h);
          ImageCopyResampled($dst_im,$src_im,0,0,0,0,$dst_w,$dst_h,$src_w,$src_h);
          // Sauve la nouvelle image
          ImageJpeg($dst_im,$img_dest);
          // Détruis les tampons
          ImageDestroy($dst_im);  
          ImageDestroy($src_im);
       }
    
       // Affiche le descritif de la vignette
       echo "SRC='".$img_dest."?t=".time()."' WIDTH=".$dst_w." HEIGHT=".$dst_h;
    }
    
    // AFFICHAGE DE LA PAGE
    
    ?><HTML><HEAD><TITLE>Générateur de vignettes</TITLE>
       <STYLE>
          td,input { font:normal 8pt Verdana }
       </STYLE>
    </HEAD><BODY bgcolor=#FFFFFF>
    
       <center><table width=100% height=100%><tr>
          <td align=center>
    
             <font size=4>Désignez une image .JPG</font> <i>(300 Ko max.)<br>
    
    <? // GESTION DE L'UPLOAD
    
    $rep="./"; // Répertoire de stockage (doit avoir les droits d'écriture ! CHMOD)
    $f = $rep."original.jpg"; // path du fichier original
    
    if(isset($_FILES['photo'])) {
       if($_FILES['photo']['size']>0) {
          if(strtolower(substr($_FILES['photo']['name'],-4))!=".jpg") { ?>
               <b>Ce n'était pas un .JPG !</b>
          <? } elseif (!move_uploaded_file($_FILES['photo']['tmp_name'], $f)) { ?>
               <b>Erreur d'enregistrement !</b>
          <? }
       } else { ?>
          <b>Trop gros fichier !</b>
       <? }
    }?>
             <table><FORM METHOD="POST" ENCTYPE="multipart/form-data">
                <INPUT TYPE=HIDDEN NAME=MAX_FILE_SIZE VALUE=<? echo 300*1024;?>>
                <tr><td align=center><INPUT TYPE=FILE NAME="photo"></td></tr>
                <tr><td align=center><INPUT TYPE=SUBMIT value="Générer la vignette"></td></tr>
             </FORM></table>
    
    <? // AFFICHAGE DE LA VIGNETTE ET DES INFOS
    
    $f2 = $rep."vignette.jpg"; // path de la vignette
    $largeur=150; if(!empty($_GET["largeur"])) $largeur = $_GET["largeur"];
    $hauteur=150; if(!empty($_GET["hauteur"])) $hauteur = $_GET["hauteur"];
    
       if(file_exists($f)) { ?>
    
             <table border=0 cellspacing=5 cellpadding=0><tr>
                <td>
                   <center><b>Original</b></center><br>
                   Poids : <?echo round(filesize($f)/1024)?> Ko<br>
                   Taille : <?
                      $size = GetImageSize($f);
                      echo $size[0]."x".$size[1]; ?><br>
                   <br><center>
                      <A href="vignette.php?dwn=<?echo $f?>">Télécharger</A>
                   </center>
                </td><td align=center>
                   <IMG <? redimage($f,$f2,$largeur,$hauteur)?>>
                </td><td>
                   <center><b>Vignette</b></center><br>
                   Poids : <?echo round(filesize($f2)/1024)?> Ko<br>
                   Taille : <?
                      $size = GetImageSize($f2);
                      echo $size[0]."x".$size[1]; ?><br>
                   <br><center>
                      <A href="vignette.php?dwn=<?echo $f2?>">Télécharger</A>
                   </center>
                </td>
             </tr><tr>
    
    <? // CHOIX DES DIMENSIONS DE LA VIGNETTE
    ?>
                <form><td colspan=3 align=center>
                   <table><tr>
                      <td>Largeur :</td>
                      <td><select name="largeur">
                         <?for($i=10;$i<=150;$i+=10) {
                            echo "<option";
                            if($i==$largeur) echo " SELECTED";
                            echo ">".$i."</option>\n";
                         } ?>
                      </select></td>
                      <td>Hauteur :</td>
                      <td><select name="hauteur">
                         <?for($i=10;$i<=150;$i+=10) {
                            echo "<option";
                            if($i==$hauteur) echo " SELECTED";
                            echo ">".$i."</option>\n";
                         } ?>
                      </select></td>
                      <td><input type=submit value=Modifier></td>
                </td></form>
             </tr></table>
    
       <? } ?>
    
          </td>
       </tr></table></center>
    
    </BODY></HTML><?
    
    } ?>
    ht*p://www.asp-php.net/scripts/asp-php/vignette.php?page=4 voici un exemple de ce que cela donne

    merci d'avance

    PS: si par hasard vous avez un script qui créé des miniature d'un dossier entier: ça m'interresse aussi !!
     
  2. dd32
    dd32 WRInaute accro
    Inscrit:
    9 Septembre 2005
    Messages:
    2 705
    J'aime reçus:
    0
    Bonsoir,
    Peux-tu donner plus d'infos sur l'hébergeur de ton script ?
    Est-ce que tu downloades vers le bon répertoire ?
     
  3. chili palmer
    chili palmer WRInaute discret
    Inscrit:
    16 Décembre 2005
    Messages:
    93
    J'aime reçus:
    0
    le probleme était exactement ça !!

    merci :wink:
     
Chargement...
Similar Threads - [RESOLUE]Erreur 404 script Forum Date
Redirection 404 via le .htaccess / pb avec les liens relatifs Débuter en référencement 5 Mai 2022
comment afficher l erreur 404 URL Rewriting et .htaccess 28 Juillet 2021
404/410 vides pour les bots ? Débuter en référencement 17 Mai 2021
Search Console Comment faire partir les erreurs Couverture => Introuvable (404) Problèmes de référencement spécifiques à vos sites 12 Mars 2021
page 404 lien indexer comment le rediriger? Débuter en référencement 12 Janvier 2021
Suppression répertoire complet. Redirection 301 ou Erreur404 ? URL Rewriting et .htaccess 7 Janvier 2021
Page 404 pour la page Marque si pas de produits e-commerce 25 Novembre 2020
Erreur 404 suite à changement de site mobile Problèmes de référencement spécifiques à vos sites 19 Septembre 2020
Comment rediriger en 301 toutes les 404 vers une page précise ? Débuter en référencement 9 Septembre 2020
script ou méthode pour connaitre ses 404 Administration d'un site Web 4 Août 2020
QWANT mars 2020 : index à nouveau périmé, liens 404, manipulation des résultats... Autres moteurs de recherche connus 5 Mars 2020
Anomalie 404 lors du crawl Crawl et indexation Google, sitemaps 28 Février 2020
Redirection htaccess vers 404 Netlinking, backlinks, liens et redirections 2 Décembre 2019
Erreur 404 perso : comment éviter qu'elle soit indexée ? Administration d'un site Web 1 Décembre 2019
Url anormal 404 Google Analytics Google Analytics 20 Novembre 2019
Enlever rapidement des milliers url spam (erreur 404) de l'index google Crawl et indexation Google, sitemaps 25 Septembre 2019
WordPress Soucis 404 suite changement structure permaliens Référencement Google 18 Juin 2019
Passer des 404 spammées en 410 avec htaccess URL Rewriting et .htaccess 18 Juin 2019
Les pages 404 avec googlebot Crawl et indexation Google, sitemaps 14 Juin 2019
Erreur 404 car rajout de code dans une redirection Netlinking, backlinks, liens et redirections 6 Mai 2019