login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Uploads worden niet geplaatst (Opgelost)

Offline metrofan - 06/12/2010 21:00
Avatar van metrofanNieuw lid Hallo,

ik ben op dit moment bezig met een uploadscript dat een bestand upload naar een dir op de site en de link naar dat bestand in de database plaatst.
Nu heb ik er een datalimiet op gezet van 5 mb, waarbij er een foutmelding wordt gegeven als het bestand groter is.

Het werkt allemaal, maar als ik een bestand van groter dan 5 mb probeer te uploaden, geeft hij geen foutmelding. Hij plaats alleen de link in de database die een 404 geeft omdat het uploaden van het bestand niet gelukt is.

Dit is de code (de overige errors er even uitgelaten):

  1. if(isset($_POST['upload']))
  2. {
  3. if ($_FILES['userfile']['size'] > 5250000)
  4. {
  5. $errorsize = "<font color=\"red\">- Het bestand is groter dan <b>5 mb</b>. Verklein het bestand en probeer het opnieuw.</font><br>";
  6. }
  7. if((($_POST['day']) != "")and(($_POST['month']) != "")and(($_POST['year']) != "")and(($_FILES['userfile']['name']) != "")and($extfout != "nee")and($_FILES['userfile']['size'] < 5250000))
  8. {
  9. $fileName = replace($_FILES['userfile']['name']);
  10. $fileDay = addslashes($_POST['day']);
  11. $fileMonth = addslashes($_POST['month']);
  12. $fileYear = addslashes($_POST['year']);
  13. $fileBericht = addslashes($_POST['bericht']);
  14. $tmpName = $_FILES['userfile']['tmp_name'];
  15. $fileSize = $_FILES['userfile']['size'];
  16. $fileType = $_FILES['userfile']['type'];
  17. $fileDate = $fileYear."".$fileMonth."".$fileDay;
  18. $fileLink = "www.virtutedei.nl/leden/voorstudie/uploads/".$fileDate."/".$fileName;
  19.  
  20.  
  21. $fp = fopen($tmpName, 'r');
  22. $content = fread($fp, filesize($tmpName));
  23. $content = addslashes($content);
  24. fclose($fp);
  25.  
  26. {
  27. $fileName = addslashes($fileName);
  28. }
  29.  
  30. $query = "INSERT INTO voorstudie ( date, day, month, year, updatum, link, filename, type, size, bericht ) ".
  31. "VALUES ('$fileDate', '$fileDay', '$fileMonth', '$fileYear', UNIX_TIMESTAMP(), '$fileLink', '$fileName', '$fileType', '$fileSize', '$fileBericht' )";
  32.  
  33. mysql_query($query) or die('Error, query failed');
  34.  
  35.  
  36.  
  37. mkdir("uploads/".$fileDate."", 0777);
  38.  
  39. if (is_uploaded_file($_FILES['userfile']['tmp_name']))
  40. {
  41. move_uploaded_file($_FILES['userfile']['tmp_name'], "uploads/".$fileDate."/".$fileName);
  42. }
  43.  
  44.  
  45. echo "<link href=\"style.css\" rel=\"stylesheet\" type=\"text/css\" />
  46. <div id=\"container\">
  47. <b>Het voorstudiemateriaal ($fileName) van de vergadering op $fileDay-$fileMonth-$fileYear is succesvol geupload.</b><br> </div>";
  48. }
  49. else
  50. {
  51. echo "<link href=\"style.css\" rel=\"stylesheet\" type=\"text/css\" />
  52. <div id=\"container\">
  53. $errorday
  54. $errormonth
  55. $erroryear
  56. $errorname
  57. $errorsize
  58. $errorext
  59. </div>";
  60. }
  61. }


Waar kan het aan liggen? De limiet lager zetten doe ik liever niet, omdat de bestanden vaak een aantal mb's groot zijn.

2 antwoorden

Gesponsorde links
Offline vinTage - 06/12/2010 21:24
Avatar van vinTage Nieuw lid vaak is de maximum upload bij een 'normale' host gelimmit op 2 mb.

google naar ini_set en iets met post max size
en hetzelfde maar htaccess.
Offline metrofan - 07/12/2010 21:04 (laatste wijziging 11/12/2010 21:23)
Avatar van metrofan Nieuw lid Hmm... dank je wel. Ik ben al een eind op weg. Het moet idd met htaccess, maar bij mij doet dat het niet als ik het doe als op internet beschreven staat. Ik heb nu dit in het htaccess staan:

  1. php_value upload_max_filesize 8M
  2. php_value post_max_size 8M
  3. php_value max_execution_time 200
  4. php_value max_input_time 200


Volgens de tutotial moet ik dat htaccessbestand "in the root folder of web server" plaatsen. Misschien een beetje rare vraag, maar waar moet ik dat htaccess bestand dan precies plaatsen? Misschien dat het daar aan ligt.

[edit:] het is gelukt Ik had de volgende regel nog in het form staan:

  1. <input type="hidden" name="MAX_FILE_SIZE" value="2000000">


De value van 2 mb hield de bestanden nog tegen. Value aangepast = probleem opgelost  
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.211s