Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
693 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  upload d'images qi ne fonctionne pas

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

upload d'images qi ne fonctionne pas

n°1540001
couic_04
Posté le 07-04-2007 à 18:33:46  profilanswer
 

bonjour tout le monde!
 
Voilà j'apprends le php et comme je suis debutant de chez debutant je n'y arrive pas trop. J'ai 2 problèmes. le 1er est que tous les fichiers se font uploadé alors que je ne veux que les .gif, .jpeg, .jpg et .png. voici mon code:
 
 
<body>
<?php  
if(!empty($_POST['posted'])) {  
    // On vérifie si le champ est rempli  
    if(!empty($_FILES['photo']['name'])) {  
        // On vérifie l'extension du fichier  
        if(substr($nom_file, -3) == $extension) {  
            // On récupère les dimensions du fichier  
            $infos_img = getimagesize($_FILES['photo']['tmp_name']);  
             
            // On vérifie les dimensions et taille de l'image  
            if(($infos_img[0] <= $width_max) && ($infos_img[1] <= $height_max) && ($_FILES['photo']['size'] <= $max_size)) {  
                // Si c'est OK, on teste l'upload  
                if(move_uploaded_file($_FILES['photo']['tmp_name'],$target.$_FILES['photo']['name'])) {  
                    // Si upload OK alors on affiche le message de réussite  
                    echo '<b>Image uploadée avec succès !</b>';  
                    echo '<hr />';  
                    echo '<b>Fichier :</b> ', $_FILES['photo']['name'], '<br />';  
                    echo '<b>Taille :</b> ', $_FILES['photo']['size'], ' Octets<br />';  
                    echo '<b>Largeur :</b> ', $infos_img[0], ' px<br />';  
                    echo '<b>Hauteur :</b> ', $infos_img[1], ' px<br />';  
                    echo '<hr />';  
                    echo '<br /><br />';  
                } else {  
                    // Sinon on affiche une erreur système  
                    echo '<b>Problème lors de l\'upload !</b><br /><br /><b>', $_FILES['photo']['error'], '</b><br /><br />';  
                }  
            } else {  
                // Sinon on affiche une erreur pour les dimensions et taille de l'image  
                echo '<b>Problème dans les dimensions ou taille de l\'image !</b><br /><br />';  
            }  
        } else {  
            // Sinon on affiche une erreur pour l'extension  
            echo '<b>Votre image ne comporte pas l\'extension .jpg !</b><br /><br />';  
        }  
    } else {  
        // Sinon on affiche une erreur pour le champ vide  
        echo '<b>Le champ du formulaire est vide !</b><br /><br />';  
    }  
}  
?>
 
mon FORM:
 
<form method="post" name="form2" enctype="multipart/form-data" action="<?php echo $editFormAction; ?>">
     
  <table align="center">
    <tr valign="baseline">
      <td nowrap align="right">Photo:</td>
      <td>
         <input type="file" name="photo" value="" size="32" onChange="view_image()"></td>
    </tr>
    <tr valign="baseline">
      <td nowrap align="right">&nbsp;</td>
      <td><input type="submit" value="Insert record" onchange="view_image()"></td>
    </tr>
  </table>
  <input type="hidden" name="id_photos" value="">
  <input type="hidden" name="MM_insert" value="form2">
</form>
</body>
 
 
ai-je oublié qqch?
 
 
mon 2eme probleme:
 
lorsque j'insère une imge par un formulaire d'insertion l'image ne s'affiche pas, et lorsque je regarde la propriété d l'image, c'estun .tmp, alors qu'autrefois non.
 
<Script Language='javascript'>
function view_image(){
  if (document.forms[0].photo.value.indexOf('.jpg',0) == -1 &&
  document.forms[0].photo.indexOf('.JPG',0) == -1 ){
    alert("\nL\'image doit être au format .jpg !\n\n" );
}
else {
  document.emplacement_image.src=document.forms[0].photo.value
}
}
</script>
 
<img src="photos/vignette_photo_<?php echo $row_Rs_photos['photo']; ?>" name="emplacement_image"/>
 
 
merci de bien vouloir m'aider

mood
Publicité
Posté le 07-04-2007 à 18:33:46  profilanswer
 

n°1540034
Shinuza
This is unexecpected
Posté le 07-04-2007 à 19:50:31  profilanswer
 

Salut
Entoure ton code de [cpp][/cpp] stp merci.


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1540068
sielfried
Posté le 07-04-2007 à 22:21:33  profilanswer
 
n°1540099
Shinuza
This is unexecpected
Posté le 07-04-2007 à 23:10:08  profilanswer
 

J'ai juste tapé [code]  :heink:


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1540221
couic_04
Posté le 08-04-2007 à 15:40:32  profilanswer
 

Code :
  1. <body>
  2. <?php 
  3. if(!empty($_POST['posted'])) { 
  4.     // On vérifie si le champ est rempli   
  5.     if(!empty($_FILES['photo']['name'])) { 
  6.         // On vérifie l'extension du fichier   
  7.         if(substr($nom_file, -3) == $extension) { 
  8.             // On récupère les dimensions du fichier   
  9.             $infos_img = getimagesize($_FILES['photo']['tmp_name']); 
  10.              
  11.             // On vérifie les dimensions et taille de l'image   
  12.             if(($infos_img[0] <= $width_max) && ($infos_img[1] <= $height_max) && ($_FILES['photo']['size'] <= $max_size)) { 
  13.                 // Si c'est OK, on teste l'upload   
  14.                 if(move_uploaded_file($_FILES['photo']['tmp_name'],$target.$_FILES['photo']['name'])) { 
  15.                     // Si upload OK alors on affiche le message de réussite   
  16.                     echo '<b>Image uploadée avec succès !</b>'; 
  17.                     echo '<hr />'; 
  18.                     echo '<b>Fichier :</b> ', $_FILES['photo']['name'], '<br />'; 
  19.                     echo '<b>Taille :</b> ', $_FILES['photo']['size'], ' Octets<br />'; 
  20.                     echo '<b>Largeur :</b> ', $infos_img[0], ' px<br />'; 
  21.                     echo '<b>Hauteur :</b> ', $infos_img[1], ' px<br />'; 
  22.                     echo '<hr />'; 
  23.                     echo '<br /><br />'; 
  24.                 } else
  25.                     // Sinon on affiche une erreur système   
  26.                     echo '<b>Problème lors de l\'upload !</b><br /><br /><b>', $_FILES['photo']['error'], '</b><br /><br />'; 
  27.                 } 
  28.             } else
  29.                 // Sinon on affiche une erreur pour les dimensions et taille de l'image   
  30.                 echo '<b>Problème dans les dimensions ou taille de l\'image !</b><br /><br />'; 
  31.             } 
  32.         } else
  33.             // Sinon on affiche une erreur pour l'extension   
  34.             echo '<b>Votre image ne comporte pas l\'extension .jpg !</b><br /><br />'; 
  35.         } 
  36.     } else
  37.         // Sinon on affiche une erreur pour le champ vide   
  38.         echo '<b>Le champ du formulaire est vide !</b><br /><br />'; 
  39.     } 
  40. ?>
  41. mon FORM:
  42. <form method="post" name="form2" enctype="multipart/form-data" action="<?php echo $editFormAction; ?>">
  43.    
  44.   <table align="center">
  45.     <tr valign="baseline">
  46.       <td nowrap align="right">Photo:</td>
  47.       <td>
  48.          <input type="file" name="photo" value="" size="32" onChange="view_image()"></td>
  49.     </tr>
  50.     <tr valign="baseline">
  51.       <td nowrap align="right">&nbsp;</td>
  52.       <td><input type="submit" value="Insert record" onchange="view_image()"></td>
  53.     </tr>
  54.   </table>
  55.   <input type="hidden" name="id_photos" value="">
  56.   <input type="hidden" name="MM_insert" value="form2">
  57. </form>
  58. </body>
  59. ai-je oublié qqch?
  60. mon 2eme probleme:
  61. lorsque j'insère une imge par un formulaire d'insertion l'image ne s'affiche pas, et lorsque je regarde la propriété d l'image, c'estun .tmp, alors qu'autrefois non.
  62. <Script Language='javascript'>
  63. function view_image(){
  64.   if (document.forms[0].photo.value.indexOf('.jpg',0) == -1 &&
  65.   document.forms[0].photo.indexOf('.JPG',0) == -1 ){
  66.     alert("\nL\'image doit être au format .jpg !\n\n" );
  67. }
  68. else {
  69.   document.emplacement_image.src=document.forms[0].photo.value
  70. }
  71. }
  72. </script>
  73. <img src="photos/vignette_photo_<?php echo $row_Rs_photos['photo']; ?>" name="emplacement_image"/>

n°1540223
couic_04
Posté le 08-04-2007 à 15:41:22  profilanswer
 

ouais ca a l'air d'etre un peu plus mieux bien... merci

n°1540246
Shinuza
This is unexecpected
Posté le 08-04-2007 à 17:30:04  profilanswer
 

Tu devais uniquement mettre le code php/html/javascript entre les balises [:dawa]
 
Bref, il manque $nom_file et $extension.
 
Dans tous les cas, tu souhaiteras surement faire une comparaison d'un tableau de valeur avec le type de fichier envoyer. Car à l'heure actuelle tu compares avec une seule valeur.
 
Autre chose, vérifier l'extension n'est pas suffisant, tu peux renommer n'importe quel fichier en .jpg, il te faut récupérer le vrai type de l'image avec getimagesize()


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  upload d'images qi ne fonctionne pas

 

Sujets relatifs
[résolu] scriptaculous qui fonctionne sous IE mais pas firefox ?upload fichier multiple
Upload d'une image par url..problème d'upload
Upload en phpProbleme decallage des images sous firefox
pb upload fichier video.Grouper deux images et les enregistrer avec action acript
Preg replace : ne fonctionne que pour une seule ligneUpload d'images : jpg->jpg fonctionne mais pas gif->jpg
Plus de sujets relatifs à : upload d'images qi ne fonctionne pas


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR