login  Naam:   Wachtwoord: 
Registreer je!
 Forum

$_FILES[..] werkt niet altijd (jpg probleempje) (Opgelost)

Offline vinTage - 18/03/2009 23:20
Avatar van vinTageNieuw lid Okay, eerst en vooral wil ik even melden dat dit waarschijnlijk dus geen php probleem is, maar OOK geen grafisch probleem.

Ik kan op de een of andere manier dus foto's uit mn digitale camera niet gebruiken om te uploaden via php...

Een voorbeeld php upload scirptje (wat dus niet upload, maar wel checked)

  1. <?php
  2. if(isset($_POST['submit']))
  3. {
  4. if (!empty($_FILES['bestand']['name']))
  5. {
  6. echo "type is: ".$_FILES['bestand']['type']."<br>"; //leeg met mijn voorbeeld foto...
  7. var_dump($_FILES); //ook hier is type leeg
  8. echo "<br>";
  9. if($_FILES['bestand']['type'] == "image/jpeg" || $_FILES['bestand']['type'] == "image/pjpeg")
  10. {
  11. echo "<h2>Successvol opgeslagen, redirect in 3 seconden.</h2>";
  12. }
  13. else
  14. {
  15. echo "<span style='color:red;'>MISLUKT!<br />Alleen <b>jpg</b> fotos uploaden!</span><br />"; //natuurlijk een error als type leeg is..(met mijn voorbeeld foto dus)
  16. }
  17. }
  18. else
  19. {
  20. echo "<span style='color:red;'>Foto kiezen...</span><br />";
  21. }
  22. }
  23. else
  24. {
  25. ?>
  26. <form action="<?php echo $_SERVER['REQUEST_URI'];?>" enctype="multipart/form-data" method="post">
  27. <input type="file" name="bestand"><br /><br />
  28. <input type="submit" name="submit" value="toevoegen">
  29. </form>
  30. <?php
  31. }
  32. ?>


Test het scriptje en je zal zien dat het werkt (mist jpg gebruikt)
Maar test het scriptje dan eens met een foto uit mijnn digitale camera...
Het is ECHT wel een jpg...
Op mn pc kan ik gewoon die fotos bekijken en bij "eigenschappen" staat ook gewoon jpg.

hoe, wie, wat ,waar...?

ps, het is niet dringent ofzo hoor, ik kon het ook bij overige plaatsen, maar aangezien mn pc het wel juist aangeeft, maar php niet...

Het upload/resize script wordt ooit voor een cmsje van een klantje en wil dus graag weten waar dit soort fouten vandaan komen.


thx

6 antwoorden

Gesponsorde links
Offline svghosting - 18/03/2009 23:24 (laatste wijziging 18/03/2009 23:28)
Avatar van svghosting Lid Waarschijnlijk zit er op je camera een foto beveiliging. Indien je dan fotos maakt kunnen deze niet op het web gezet worden.

Daarnaast is het een JPEG file die kunnen behoorlijk moeilijk doen. ik zou als ik jou was de volgende extensie nog even toevoegen die geupload moegen worden.

- jpg
- JPG
- jpeg
- JPEG

Daar naast begrijp ik niet waarom dit erin staat
['type'] == "image/pjpeg")

Volgens mij hoort die p daar niet  
Offline vinTage - 18/03/2009 23:31
Avatar van vinTage Nieuw lid
Citaat:
Waarschijnlijk zit er op je camera een foto beveiliging. Indien je dan fotos maakt

euhm, hij staat toch op het web :D

type maakt niet uit of je caps of lowercase extenties gebruikt volgens mij.
pjpeg is gewoon goed 
Offline Martijn2008 - 18/03/2009 23:34 (laatste wijziging 18/03/2009 23:34)
Avatar van Martijn2008 PHP beginner Ik check hierop:

  1. <?
  2.  
  3. $validPhoto = $_FILES['bestand']['type'] == "image/jpg" || $_FILES['bestand']['type'] == "image/jpeg" || $_FILES['bestand']['type'] == "image/pjpeg";
  4.  
  5. ?>
Offline vinTage - 18/03/2009 23:37 (laatste wijziging 18/03/2009 23:38)
Avatar van vinTage Nieuw lid Het maakt mij niet uit waar je allemaal op checked, ik geef alleen aan dat zelfs die var_dump type leeg laat  
Er is dus wel degelijk "iets" met die image, want alle andere jpgtjes doen het wel.

edit: voor de duidelijkheid, de name wordt wél gezien.
eea zie je alleen als je daadwerkelijk de code test met verschillende images EN de mijne.
Offline Jas_per_post - 19/03/2009 00:31 (laatste wijziging 19/03/2009 00:34)
Avatar van Jas_per_post JS interesse
php.net schreef:
UPLOAD_ERR_INI_SIZE

Value: 1; The uploaded file exceeds the upload_max_filesize directive in php.ini.


Nog even een toelichting, ik weet niet of jij dit ook krijgt, maar ik krijg in $_FILES['bestand']['error'] een 1, en na even nazoeken blijkt die 1 een errorcode te zijn, en wel van de bovenstaande error.
Offline vinTage - 19/03/2009 00:55 (laatste wijziging 19/03/2009 01:00)
Avatar van vinTage Nieuw lid aha, that makes sence, net getest met een lagere reso in te stellen op die camera en inderdaad!! het werkt wel met die "kleinere" images!

ps, ik kreeg die error niet te zien...mn localhostje dus even wat "stricter" zetten.


thx 


edit, ah nu je het zegt
Citaat:
array(1) { ["bestand"]=> array(5) { ["name"]=> string(8) "poes.jpg" ["type"]=> string(0) "" ["tmp_name"]=> string(0) "" ["error"]=> int(1) ["size"]=> int(0) } }


Gewoon straal overheen gekeken, anyway, nogmaals thx 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.412s