Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MYSQL] Upload pliku + nie chce dodac powyzej 1M
blizni79
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 24.09.2003

Ostrzeżenie: (0%)
-----


Mój problem polega na tym że baza danych nie chce przyjąc plików większych niż 1M. Tabela do któej dodaje jest ustawiona prawidłowo. Brakuje mi już rozwiazań.
Poradzcie cos (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Ten błąd pobralem z proby dodania pliku przez phpmyadmin.
Fatal error: Allowed memory size of 20971520 bytes exhausted (tried to allocate 2134174 bytes)
in /usr/local/phpmyadmin/libraries/sqlparser.lib.php on line 211


w formularzu na stronie nie pojawia sie zaden blad.
Jak to ominąc??
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




To nie wina bazy, tylko wina tego ze masz limit ustawione na skrypt php, i ten limit wlasnie osiągnales.Masz to bardzo ladnie napisane w komunikacie o bledzie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

przenosze. zbazka to nie ma nic wspolnego
Go to the top of the page
+Quote Post
blizni79
post
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 24.09.2003

Ostrzeżenie: (0%)
-----


No dobrze, limity w skrypcie php
http://www.cim.pw.edu.pl/uchwyty/info.php
w phpinfo() wszystko jest ciete powyzej 10mb
upload_max_filesize 10M
post_max_size 10M


moze to to?
max_execution_time 30
max_input_time 60

w samym skrypcie upload nie ma zadnych limitow

Ten post edytował blizni79 21.09.2006, 09:10:18
Go to the top of the page
+Quote Post
JohnySpot
post
Post #4





Grupa: Zarejestrowani
Postów: 106
Pomógł: 0
Dołączył: 9.09.2003
Skąd: Włocławek

Ostrzeżenie: (0%)
-----


Jest jeszcze
memory_limit =

i <input type="hidden" name="max_file_size" value="90000000" />
Go to the top of the page
+Quote Post
macbirdie
post
Post #5





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 7.09.2006
Skąd: Poznań

Ostrzeżenie: (0%)
-----


To akurat jest błąd wyczerpania pamięci - plik przyjmuje bez problemu, jednak phpMyAdmin chce ten plik wciągnąć do bazy, wcześniej go analizując. Lepiej ten pliczek powrzucaj kawałkami, albo przez użycie mysql z linii komend.
Coś a'la
Cytat
mysql -uuzytkownik -p nazwabazy < plik.sql
Go to the top of the page
+Quote Post
blizni79
post
Post #6





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 24.09.2003

Ostrzeżenie: (0%)
-----


Dzieki macbirdie za zrozumienie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Pliki jakie wrzucam do bazy to .SLTPRT, moze to ma jakis wplyw??
Informacje podane przez JohnySpot zostały przezemnie sprawdzone wczesniej - to tez nie pomoglo.

Może kolega macbirdie powiesz mi jak wrzucac takie pliki po kawaleczku?
Problem w tym ze to ma dzialac z poziomy formularza.
A formularz przepuszcza go
Array ( [userfile] => Array ( [name] => kołek oporowy z łbem naciety-d40x90.SLDPRT [type] => application/octet-stream [tmp_name] => /tmp/php6KoYuE [error] => 0 [size] => 1067008 ) )
a baza go nie dodaje??
Z mniejszymi plikami nie ma problemu. A jesli chdozi o pliki SLDPRT to przyjmuje je ponizej 600kb, zip i inne pobiera ponizej 1mb.
Z tego samego formularza wysylajac pliki na serwer do danej lokalizacji, pliki przechodza super, bez zadnego ale.

I co tu nie gra??

Ten post edytował blizni79 21.09.2006, 09:47:55
Go to the top of the page
+Quote Post
JohnySpot
post
Post #7





Grupa: Zarejestrowani
Postów: 106
Pomógł: 0
Dołączył: 9.09.2003
Skąd: Włocławek

Ostrzeżenie: (0%)
-----


Sprawdź jeszcze w $_FILES[ ... ][ 'error' ]
no i zobacz, na jakim etapie to się dzieje. Ja wczoraj pisałem skrypt i zrobiłem to tak:

  1. <?php
  2. private function zapisz_plik($rozszerzenie) {
  3. $typy = array('audio/mpeg3' => 'mp3','audio/mpeg' => 'mp3','audio/x-mpegurl' => 'mp3', 'audio/x-ogg' => 'ogg', 'application/x-ogg' => 'ogg');
  4. $max_rozmiar = 10*1024*1024;
  5. if (is_uploaded_file($_FILES['plik']['tmp_name'])) {
  6. if ($_FILES['plik']['size'] > $max_rozmiar) {
  7.  echo '<p class="err">Błąd! Plik jest za duży!</p>';
  8. } else {
  9.  if (!isset($_FILES['plik']['type'])) {
  10. $typ = mime_content_type('./audio/'.md5($_SESSION['nick']));
  11.  } else {
  12. $typ = $_FILES['plik']['type'];
  13.  }
  14.  $rozszerzenie_mime = FALSE;
  15.  foreach ($typy AS $mime => $rozsze) {
  16. $rozszerzenie_mime = ($mime == $typ) ? $rozsze : FALSE;
  17. if ($rozszerzenie_mime) {
  18. break;
  19. }
  20.  
  21.  }
  22.  if ($rozszerzenie_mime) {
  23. echo '<p class="ok">Odebrano plik. Początkowa nazwa: '.$_FILES['plik']['name'].'</p>';
  24. if (file_exists('./audio/'.md5($this->mysql->insert_id).'.'.$rozszerzenie)) {
  25. @unlink('./audio/'.md5($this->mysql->insert_id).'.'.$rozszerzenie);
  26. }
  27.  
  28. move_uploaded_file($_FILES['plik']['tmp_name'], './audio/'.md5($this->mysql->insert_id).'.'.$rozszerzenie);
  29.  } else {
  30. echo 'Błędny typ mime pliku.';
  31.  }
  32.  
  33. }
  34. } else {
  35. echo '<p class="err">Błąd przy przesyłaniu danych!</p>';
  36. }
  37.  }
  38. ?>


(IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) :P Zapomniałem, że Ty masz błąd w php. A spróbuj upladowac ten sam plik do folderu nie do bazy ?

Ten post edytował JohnySpot 21.09.2006, 10:07:49
Go to the top of the page
+Quote Post
blizni79
post
Post #8





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 24.09.2003

Ostrzeżenie: (0%)
-----


Sprawa wyglada tak jak wczesniej napisalem
plik wysylany na serwer - dziala
plik wysylany do bazy danych - nie dziala

wiec mysle ze to raczej sprawa bazy danych a nie php.

kto ma jakis inny pomysl na to czemu to nie chodiz?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 06:11