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

  FORUM HardWare.fr
  Programmation
  PHP

  upload de jpg et bmp impossible

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

upload de jpg et bmp impossible

n°1215818
cmoijulie
Posté le 05-10-2005 à 18:18:22  profilanswer
 

Bonjour,  
j'ai un petit soucis d'upload d'image. Le format gif passe très bien par contre le jpg et bmp ne passent pas, j'ai beau chercher depuis 3 jours, je ne trouve pas le problème...  
 
voici le code de reception de l'upload, qui est fait à l'aide d'un formulaire :  
 

Code :
  1. <?php
  2. require('connect1.php');
  3. ?>
  4. <html>
  5. <head>
  6. <link rel="stylesheet" href="style.css" type="text/css">
  7. </head>
  8. <?php
  9. if( isset($_POST['upload']) ) // si formulaire soumis  
  10.    {
  11.     $content_dir = '../photos/'; // dossier où sera déplacé le fichier  
  12.    $tmp_file = $_FILES['name_file']['tmp_name'];   }
  13.    
  14. if(!empty($descriptif) && !empty($format) && !empty($mots_cles) && !empty($lieu) && !empty($date))
  15.    {
  16.    print("<p class=titre>Descriptif : $descriptif<br>Format : $format<br>Mots-clés : $mots_cles<br>Lieu : $lieu<br>Date : $date<br></p>" );
  17.    }
  18. else if($name_file_size>200000)
  19.    {
  20.    print("<p class=titre>fichier trop lourd" );
  21.    }
  22. else
  23.    {
  24.    print("<p class=titre>remplir tous les champs</p><br>" );
  25.    exit;
  26.    }
  27. if( !is_uploaded_file($tmp_file) )
  28.     {
  29.     print("<p class=titre>le fichier est introuvable<br></p>" );
  30.      }
  31. // on vérifie maintenant l'extension  
  32. $type_file = $_FILES['name_file']['type'];
  33. echo "uiju : $type_file<br>";
  34. if(!strstr($type_file, 'jpg') && !strstr($type_file, 'jpeg') && !strstr($type_file, 'bmp') && !strstr($type_file, 'gif'))
  35. //if($tmp_file_type!="image/gif" && $tmp_file_type!="image/jpg" && $tmp_file_type!="image/jpeg" && $tmp_file_type!="image/bmp" )  
  36.       {
  37.     exit("<p class=titre>le fichier n'est pas une image</p>" );
  38.       }
  39. // on copie le fichier dans le dossier de destination  
  40. $name_file = $_FILES['name_file']['name'];
  41. if( !move_uploaded_file($tmp_file, $content_dir.$name_file) )
  42.     {
  43.     exit("Impossible de copier le fichier" );
  44.       }
  45. echo '<p class=titre>Le fichier a bien été uploadé</p><br>';
  46. $sql="INSERT INTO photos VALUES ('','$name_file','$id_theme','$descriptif','$id_photographe','$format','$mots_cles','$lieu','$date')";
  47. $req=mysql_query($sql) or die ('Erreur SQL <br>').$sql.'<br>'.mysql_error();
  48. $sql3="SELECT nom_photographe FROM photographe WHERE id_photographe='$id_photographe'";
  49. $req3=mysql_query($sql3) or die ('Erreur SQL3 <br>').$sql3.'<br>'.mysql_error();
  50. $nbr3=mysql_num_rows ($req3);
  51. for($i=0;$i<$nbr3;$i++)
  52.    {
  53.    list ($nom_photographe) = mysql_fetch_array($req3);
  54.    }
  55.    include 'miniature.php';
  56. ?>
  57. </html>

mood
Publicité
Posté le 05-10-2005 à 18:18:22  profilanswer
 

n°1215823
omega2
Posté le 05-10-2005 à 18:27:39  profilanswer
 

T'as cherché combien de temps?
Par ce qu'on a pas besoin de beaucoup de compétences en programmation pour voir rapidement qu'il y a écrit jpg et jpeg quelque part dans le code.

n°1215827
cmoijulie
Posté le 05-10-2005 à 18:40:06  profilanswer
 

jvois pas ce que tu veux dire ?

n°1215829
omega2
Posté le 05-10-2005 à 18:45:51  profilanswer
 

heu, oups, j'avais lu en diagonale et je viens de réaliser que le probléme est pas si simple qu'il n'y parait. :D
 
Pour tes images qui ne passent pas, ca t'affiche quoi dans le navigateur?

n°1215831
The-Shadow
Développeur
T'as été voir dans ton profil?
Posté le 05-10-2005 à 18:47:24  profilanswer
 

Peux-tu montrer la page de formulaire d'envoi stp ?
Juste le formulaire si la page est trop longue.

n°1215845
cmoijulie
Posté le 05-10-2005 à 19:02:23  profilanswer
 

et voici :  

Code :
  1. <?php
  2.  require('connect1.php');
  3. ?>
  4. <HTML>
  5. <head>
  6. <title>PHOTONLINE</title>
  7. <link rel="stylesheet" href="style.css" type="text/css">
  8. </head>
  9. <form action="recept_photos.php" method="post" enctype="multipart/form-data">
  10. <input type="hidden" name="MAX_FILE_SIZE" value="100000">
  11. <TABLE BORDER=0>
  12. <TR>
  13.      <TD height="50" width="20">&nbsp;</TD><TD height="50" width="70">&nbsp;</TD><TD height="50">&nbsp;</TD>
  14.    </TR>
  15. <TR>
  16.  <TD width="20">&nbsp;</TD>
  17.  <TD><span class="titre">Sélectionnez votre nom :</span></TD>
  18.  <TD >
  19.  <?php
  20.   $sql1="SELECT * FROM photographe;";
  21.   $req1=mysql_query($sql1) or die ('Erreur SQL <br>').$sql1.'<br>'.mysql_error();
  22.   $nb=mysql_num_rows ($req1);
  23.   echo "<select style=\"font-family:Trebuchet MS;font-size:11px;font-color:#757575\" name=\"id_photographe\">";
  24.   for($i=0;$i<$nb;$i++)
  25.    {
  26.    list($id_photographe,$nom_photographe,$prenom_photographe)=mysql_fetch_array($req1);
  27.    print ("<option value=\"$id_photographe\">$prenom_photographe $nom_photographe" );
  28.    }
  29.   echo "</select>";
  30.  ?>
  31.  </TD>
  32. </TR>
  33. <TR>
  34.  <TD width="20">&nbsp;</TD>
  35.  <TD><span class="titre">Sélectionnez un thème :</span></TD>
  36.  <TD >
  37.  <?php
  38.  $sql2="SELECT id_theme,nom_theme FROM theme order by nom_theme;";
  39.  $req2=mysql_query($sql2) or die ('Erreur SQL <br>').$sql2.'<br>'.mysql_error();
  40.  $nb2=mysql_num_rows ($req2);
  41.  echo "<select style=\"font-family:Trebuchet MS;font-size:11px;font-color:#757575\" name=\"id_theme\">";
  42.  for($i=0;$i<$nb2;$i++)
  43.   {
  44.   list($id_theme,$nom_theme)=mysql_fetch_array($req2);
  45.   echo "<option value=\"$id_theme\">$nom_theme";
  46.   }
  47.  echo "</select>";
  48.  ?>
  49.  </TD>
  50. </TR>
  51. <TR>
  52.  <TD width="20">&nbsp;</TD>
  53.  <TD ><span class="titre">Entrez le titre de la photo :</span></TD>
  54.  <TD><input type="text" name="descriptif"></TD>
  55. </TR>
  56. <TR>
  57.  <TD width="20">&nbsp;</TD>
  58.  <TD><span class="titre">Entrez le format de la photo :</span></TD>
  59.  <TD><input type="text" name="format"></TD>
  60. </TR>
  61. <TR>
  62.  <TD width="20">&nbsp;</TD>
  63.  <TD><span class="titre">Entrez les mots-clés de la photo :</span></TD>
  64.  <TD ><input type="text" name="mots_cles"></TD>
  65. </TR>
  66. <TR>
  67.  <TD width="20">&nbsp;</TD>
  68.  <TD><span class="titre">Entrez le lieu de la prise de vue :</span></TD>
  69.  <TD ><input type="text" name="lieu"></TD>
  70. </TR>
  71. <TR>
  72.  <TD width="20">&nbsp;</TD>
  73.  <TD><span class="titre">Entrez la date de la prise de vue :</span></TD>
  74.  <TD ><input type="text" name="date"></TD>
  75. </TR>
  76. <TR>
  77.  <TD width="20">&nbsp;</TD>
  78.  <TD><span class="titre">Choisissez une photo :</span></TD>
  79.  <TD ><input name="name_file" type="file"></TD>
  80. </TR>
  81. <TR>
  82.  <TD width="20">&nbsp;</TD>
  83.  <TD><span class="titre1">uniquement jpg, bmp et gif</span></TD>
  84.  <TD></TD>
  85. </TR>
  86. <TR>
  87.  <TD width="20">&nbsp;</TD>
  88.  <TD >&nbsp;</TD>
  89.  <TD align="right"><input type="submit" name="upload" value="Envoyer" style="font-family:Trebuchet MS;font-size:9px;font-color:#757575"></TD>
  90. </TR>
  91. </TABLE>
  92. </form>
  93. </html>

n°1215895
The-Shadow
Développeur
T'as été voir dans ton profil?
Posté le 05-10-2005 à 19:30:59  profilanswer
 

J'vais surement dire une connerie, mais on sait jamais.
es-tu sûr que tes jpegs ne font pas plus de 100.000 octets.
 
Autrement, essaye plutot de rajouter le type pjpeg dans ta condition, gif, bmp, jpeg, jpg et pjpeg.

n°1215917
cmoijulie
Posté le 05-10-2005 à 19:44:43  profilanswer
 

non ils ne sont pas aussi lourds et avec le pjpeg meme résultat... snif...

n°1215923
gatsusat
Posté le 05-10-2005 à 20:03:02  profilanswer
 

j'aime bocou ton tableau inutile

n°1216019
Master p
My new cock ring :D
Posté le 05-10-2005 à 21:58:56  profilanswer
 

1/ Quel est le comportement exacte du serveur lors de l'envoi d'un jpg ?
2/ Quel est alors l'affichage demandée en ligne 36 ?
3/ C'est sûrement les balises html en majuscules : perso ça me fait mal aux yeux et le serveur doit être dans le même cas [:ddr555]


---------------
HAHAHA I M USING TEH INTERNET
mood
Publicité
Posté le 05-10-2005 à 21:58:56  profilanswer
 

n°1216021
Master p
My new cock ring :D
Posté le 05-10-2005 à 22:04:33  profilanswer
 

Également je te conseille plutôt l'utilisation de exif_imagetype plutôt que de te baser sur le $_FILES (apparemment, les infos du $_FILES sont données par le navigateur).


---------------
HAHAHA I M USING TEH INTERNET
n°1216041
cmoijulie
Posté le 05-10-2005 à 22:15:19  profilanswer
 

exif_imagetype ne marche pas non plus, j'ai testé.
Le serveur m'affiche juste que le fichier n'est pas une image...
ligne 36 maffiche le nom du fichier avec lextension image.jpg

n°1216074
omega2
Posté le 05-10-2005 à 22:53:32  profilanswer
 

l'extension est bien en minuscule?

n°1216077
The-Shadow
Développeur
T'as été voir dans ton profil?
Posté le 05-10-2005 à 23:00:07  profilanswer
 

Bon, j'ai essayé ton script en local chez moi, il fonctionne bien.
j'ai juste viré les appels à la base de données et autrement, ça fonctionne.

n°1216094
Master p
My new cock ring :D
Posté le 05-10-2005 à 23:42:31  profilanswer
 

Lignes 35-36

Code :
  1. $type_file = $_FILES['name_file']['type']; 
  2. echo "uiju : $type_file<br>";


Ça dit quoi ste chose ???


---------------
HAHAHA I M USING TEH INTERNET

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

  upload de jpg et bmp impossible

 

Sujets relatifs
formulaire d'upload multiple + max_file_sizeUpload de fichier avec xmlhttprequest
Base access impossible à ouvrir "MSysDb" non trouvé...access 2003[Access] impossible d'utiliser access après son installation!
impossible de réouvrir ma base de donnée a cause d'un .ldbUpload via HTTP => impossible d'acceder aux fichiers
upload fichier impossible, fichier non trouvé[WAS] impossible de faire un upload (multipart/form-data)
[PHP/FREE] upload de fichiers impossible ???[php] Upload via scripts impossible sur multimania ?
Plus de sujets relatifs à : upload de jpg et bmp impossible


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