Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Ładowanie pliku do bazy
Forum PHP.pl > Forum > PHP
Vasquez21
Witam.

Nie wiem czy problem był poruszany, ale szukałem i nie mogę znaleźć.

Chciałem do bazy Mssql załadować plik niestety nie wiem jak :/
Korzystałem z stronki, więc nie będę mazał tego co było w komentarzach, ale mam coś takiego teraz:

  1. <?php
  2.  
  3. // store.php3 - by Florian Dittmer <dittmer@gmx.net>
  4. // Example php script to demonstrate the storing of binary files into
  5. // an sql database. More information can be found at http://www.phpbuilder.com/
  6. ?>
  7.  
  8. <html>
  9. <head><title>Store binary data into SQL Database</title></head>
  10. <body>
  11.  
  12. <?php
  13. // code that will be executed if the form has been submitted:
  14. if ($_POST['submit']=='submit') 
  15. {
  16.  
  17. // connect to the database
  18. // (you may have to adjust the hostname,username or password)
  19.  
  20.  
  21. $link = mssql_connect(&#092;"SERVER\",\"login\", \"pass\")
  22. or die(&#092;"Could not connect !\");
  23. mssql_select_db(&#092;"binary\", $link);
  24.  
  25.  
  26.  
  27. $data = addslashes(fread(fopen($GET['form_data'], &#092;"r\"), filesize($GET['form_data'])));
  28.  
  29. echo 'TU->'.$data;
  30. echo '<br>->'.$_POST['form_description'];
  31.  
  32.  
  33. $result=MSSQL_QUERY(&#092;"INSERT INTO binary_data (description,bin_data,filename,filesize,filetype) \".
  34. &#092;"VALUES ('$form_description','$data','$form_data_name','$form_data_size','$form_data_type')\");
  35.  
  36. $id= mssql_insert_id();
  37. print &#092;"<p>This file has the following Database ID: <b>$id</b>\";
  38.  
  39.  
  40.  MsSQL_CLOSE();
  41.  
  42. } 
  43. else 
  44. {
  45.  
  46. // else show the form to submit new data:
  47.  
  48. ?>
  49.  
  50. <form method=\"post\" action=\"\" enctype=\"multipart/form-data\">
  51. File Description:<br>
  52. <input type=\"text\" name=\"form_description\" size=\"40\">
  53. <input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"1000000\">
  54. <br>File to upload/store in database:<br>
  55. <input type=\"file\" id=\"form_data\" name=\"form_data\">
  56. <p><input type=\"submit\" name=\"submit\" value=\"submit\">
  57. </form>
  58.  
  59.  
  60. <?php
  61.  
  62. }
  63.  
  64. ?>
  65.  
  66. </body>
  67. </html>


No i właśnie... nie wiem gdzie jest błąd. Bo po zaakceptowaniu formularza. Wychodzi na to, że w zmiennej form_data, nie jest nic przekazywane (albo robię to źle), gdyż po zapisaniu, nagle okazuje się, że $data jest pusta.

Bardzo proszę o jakieś wskazówki.
nospor
slyszales kiedyś o czymś takim jak upload? nie? to poczytaj:
http://forum.php.pl/index.php?showtopic=32807&hl=upload
http://forum.php.pl/index.php?showtopic=32300&hl=upload
i wiele innych. wpisz haslo upload.
Vasquez21
przejrzałem kilka stron o uploadzie, poprawiłem co nieco, nadal jednak nie mogę wrzucić pliku na stronkę. Dlatego bardzo proszę Was o pomoc.

Mam coś takiego:

  1. <?php
  2.  
  3. include &#092;"open_db.inc\";
  4.  
  5. $binFile = $_FILES['userfile'];
  6. // $binFile = $_FILES['userfile']['tmp_name'];
  7. $binFile_name = $_FILES['userfile']['name'];
  8. $binFile_size = $_FILES['userfile']['size']; 
  9. $binFile_type = $_FILES['userfile']['type']; 
  10. $txtDescription = $_POST['txtDescription'];
  11.  
  12.  
  13.  
  14. if ($_POST['action'] == &#092;"upload\") {
  15. // ok, let's get the uploaded data and insert it into the db now
  16.  
  17.  
  18.  
  19. echo '<br>FILE-> '.$binFile; 
  20. if (isset($binFile) && $binFile != &#092;"none\") {
  21. echo '<br>udalo sie';
  22. $data = addslashes(fread(fopen($binFile, &#092;"r\"), filesize($binFile)));
  23. $strDescription = addslashes(nl2br($txtDescription));
  24.  
  25. echo '<br>name-> '.$binFile_name; 
  26. echo '<br>type-> '.$binFile_type; 
  27. echo '<br>size-> '.$binFile_size; 
  28. echo '<br>txt-> '.$strDescription; 
  29. echo '<br>data-> '.$data; 
  30.  
  31. $sql = &#092;"INSERT INTO binary_data (id, description, bin_data, filename, filesize, filetype)
  32. VALUES ('', '$strDescription', '$data', '$binFile_name', '$binFile_size', '$binFile_type')&#092;";
  33. $result = mssql_query($sql, $db);
  34. mssql_free_result($result); // it's always nice to clean up!
  35. echo &#092;"<br>Thank you. The new file was successfully added to our database.<br><br>\";
  36. echo &#092;"<a href='add.php'>Continue</a>\";
  37. }
  38.  // mssql_close();
  39.  
  40. } 
  41. else 
  42. {
  43. ?>
  44. <HTML>
  45. <BODY>
  46. <FORM METHOD=\"post\" ACTION=\"add.php\" ENCTYPE=\"multipart/form-data\">
  47.  <INPUT TYPE=\"hidden\" NAME=\"MAX_FILE_SIZE\" VALUE=\"1000000\">
  48.  <INPUT TYPE=\"hidden\" NAME=\"action\" VALUE=\"upload\">
  49.  <TABLE BORDER=\"1\">
  50. <TR>
  51.  <TD>Description: </TD>
  52.  <TD><TEXTAREA NAME=\"txtDescription\" ROWS=\"10\" COLS=\"50\"></TEXTAREA></TD>
  53. </TR>
  54. <TR>
  55.  <TD>File: </TD>
  56.  <TD><INPUT TYPE=\"file\" NAME=\"userfile\"></TD>
  57. </TR>
  58. <TR>
  59.  <TD COLSPAN=\"2\"><INPUT TYPE=\"submit\" VALUE=\"Upload\"></TD>
  60. </TR>
  61.  </TABLE>
  62. </FORM>
  63. </BODY>
  64. </HTML>
  65. <?php
  66. }
  67. ?>


No i właśnie w miejscu kiedy wywołuję wszystkie dane przed samym insertem, wszystkie dane mi wyświetla poza $data.... zapewne jest to spowodowane tym, że źle próbuję ten plik przekazać. Próbowałem tak:
$binFile = $_FILES['userfile'];
i tak
$binFile = $_FILES['userfile']['tmp_name'];
ale zapewne muszę to zrobić inaczej :/

Będę BARDZO wdzięczny za tą informację.
nospor
  1. <?php
  2. include &#092;"open_db.inc\";
  3.   
  4.   
  5.  
  6.  
  7. if ($_POST['action'] == &#092;"upload\") {
  8.   // ok, let's get the uploaded data and insert it into the db now
  9.   $binFile = $_FILES['userfile']['tmp_name'];
  10.   $binFile_name = $_FILES['userfile']['name'];
  11.   $binFile_size = $_FILES['userfile']['size']; 
  12.   $binFile_type = $_FILES['userfile']['type']; 
  13.   $txtDescription = $_POST['txtDescription'];
  14.  
  15.  
  16. echo '<br>FILE-> '.$binFile; 
  17.   if (isset($binFile) && $binFile != &#092;"none\") {
  18.       echo '<br>udalo sie';
  19.     $data = addslashes(fread(fopen($binFile, &#092;"r\"), filesize($binFile)));
  20.     $strDescription = addslashes(nl2br($txtDescription));
  21.  
  22. echo '<br>name-> '.$binFile_name; 
  23. echo '<br>type-> '.$binFile_type; 
  24. echo '<br>size-> '.$binFile_size; 
  25. echo '<br>txt-> '.$strDescription; 
  26. echo '<br>data-> '.$data; 
  27.     $sql = &#092;"INSERT INTO binary_data (id, description, bin_data, filename, filesize, filetype)
  28.             VALUES ('', '$strDescription', '$data', '$binFile_name', '$binFile_size', '$binFile_type')&#092;";
  29.     $result = mssql_query($sql, $db);
  30.     mssql_free_result($result); // it's always nice to clean up!
  31.     echo &#092;"<br>Thank you. The new file was successfully added to our database.<br><br>\";
  32.     echo &#092;"<a href='add.php'>Continue</a>\";
  33.   }
  34.  
  35. } 
  36. else 
  37. {
  38. ?>
  39. <HTML>
  40. <BODY>
  41. <FORM METHOD=\"post\" ENCTYPE=\"multipart/form-data\">
  42. <INPUT TYPE=\"hidden\" NAME=\"MAX_FILE_SIZE\" VALUE=\"1000000\">
  43. <INPUT TYPE=\"hidden\" NAME=\"action\" VALUE=\"upload\">
  44. <TABLE BORDER=\"1\">
  45.   <TR>
  46.    <TD>Description: </TD>
  47.    <TD><TEXTAREA NAME=\"txtDescription\" ROWS=\"10\" COLS=\"50\"></TEXTAREA></TD>
  48.   </TR>
  49.   <TR>
  50.    <TD>File: </TD>
  51.    <TD><INPUT TYPE=\"file\" NAME=\"userfile\"></TD>
  52.   </TR>
  53.   <TR>
  54.    <TD COLSPAN=\"2\"><INPUT TYPE=\"submit\" VALUE=\"Upload\"></TD>
  55.   </TR>
  56. </TABLE>
  57. </FORM>
  58. </BODY>
  59. </HTML>
  60. <?php
  61. }
  62. ?>
Vasquez21
zamieniłem

  1. <FORM METHOD="post" ACTION="add.php" ENCTYPE="multipart/form-data">


na
  1. <FORM METHOD="post" ACTION="add.php" ENCTYPE="multipart/form-data">


ale nic nie pomogło :/
nadal przy wywołaniu:

  1. <?php
  2. echo '<br>data-> '.$data; 
  3.  
  4. ?>

nic mi nie pokazuje
nospor
nie bardzo rozumiem co na co zamieniles? nie widze róznic.
pozatym, kod, który ci podalem jest ok. Testowalem go u siebie, nanioslem drobne poprawki i dziala. wkleiles go calego czy tylko fragmenty?

edit. poprawilem include bo robilem swoj include zamiast twojego
Vasquez21
wrzuciłem sobie dwa kody... mój i twój i patrzyłem na różnice...na zasadzie alt+tab...

jednak wyglądało to identycznie, na koniec wreszcie skopiowałem Twój kod, zamieniłem include na swojego i sprawdziłem czy działa...

po wpisaniu czegoś w boxa i wybaniu pliku txt potwierdziłem... i wyskoczyło mi coś takiego:

Kod
FILE-> C:\WINNT\TEMP\php3DF.tmp
name-> New Text Document.txt
type-> text/plain
size-> 127
txt-> adsdasd
data->
Thank you. The new file was successfully added to our database.

Continue


niestety w bazie nic się nie zmieniło :/
podejrzewam że dlatego, żę "$data" jest z jakiegoś powodu puste :/
nospor
podstawową róznicą jest to:$binFile = $_FILES['userfile']['tmp_name'];

nie wiem czemu,ale u mnie ten kod dziala w 100%. a jakiej wielkości ty pliki uplodujesz? zrób upload na jakimś pliki textowym o zawartości "ala ma klota" i sprwdź czy dziala. Zrób to na moim kodzie.
Vasquez21
Cytat
podstawową róznicą jest to:$binFile = $_FILES['userfile']['tmp_name'];


tak jak mówiłem na początku próbowałem również tak.

W każdym razie sprawdziłem jeszcze raz na nowym pliku, nadal jest jakiś błąd gdyż, $data w dalszym ciągu wygląda na pustą sad.gif

szperałem jeszcze w manualu... i znalazłem coś takiego:

"This's note about mssql and truncating binary output from database (mostly image ...), i spent about 2 days tuning this stuff and fortunately i made the hit ...
so if you're experiencing truncates of your binary data read from mssql database (it looks like incomplete, broken or even no images) check mssql section of your php.ini file and set values of mssql.textlimit and mssql.textsize variables to their maximum (2147483647) or at least bigger size than the default is ... so i hope it helps a bit, have a good time"

myślisz, że to to questionmark.gif
nospor
Nie, ty podales text cos o bazce, a problem jest ze ci pliku nie czyta.
Daj tak:
  1. <?php
  2.  
  3. //....
  4. echo '<br>data-> '.$data;
  5. if (file_exists($binFile))
  6. {
  7.  echo &#092;"jest plik\";
  8.  if (fopen($binFile, &#092;"r\"))
  9. echo &#092;"mozna czytac\";
  10.  else
  11. echo &#092;"nie można czytać\";
  12. }
  13. else
  14. {
  15. echo &#092;"pliku nie ma\";
  16. }
  17.  
  18. //....
  19.  
  20. ?>


pozatym na początku skrytu daj: error_reporting(E_ALL);
Vasquez21
KOD:
  1. <?php
  2. include &#092;"open_db.inc\";
  3.  
  4. if ($_POST['action'] == &#092;"upload\") {
  5. // ok, let's get the uploaded data and insert it into the db now
  6.  
  7. $binFile = $_FILES['userfile']['tmp_name'];
  8. $binFile_name = $_FILES['userfile']['name'];
  9. $binFile_size = $_FILES['userfile']['size'];
  10. $binFile_type = $_FILES['userfile']['type'];
  11. $txtDescription = $_POST['txtDescription'];
  12.  
  13.  
  14. echo '<br>FILE-> '.$binFile;
  15. if (isset($binFile) && $binFile != &#092;"none\") 
  16. {
  17. $data = addslashes(fread(fopen($binFile, &#092;"r\"), filesize($binFile)));
  18. $strDescription = addslashes(nl2br($txtDescription));
  19.  
  20. echo '<br>name-> '.$binFile_name;
  21. echo '<br>type-> '.$binFile_type;
  22. echo '<br>size-> '.$binFile_size;
  23. echo '<br>txt-> '.$strDescription;
  24. echo '<br>data-> '.$data;
  25.  
  26. if (file_exists($binFile))
  27. {
  28.  echo &#092;"jest plik\";
  29.  if (fopen($binFile, &#092;"r\"))
  30. echo &#092;"mozna czytac\";
  31.  else
  32. echo &#092;"nie można czytać\";
  33. }
  34. else
  35. {
  36. echo &#092;"pliku nie ma\";
  37. }
  38.  
  39.  
  40.  
  41. $sql = &#092;"INSERT INTO binary_data (id, description, bin_data, filename, filesize, filetype)
  42. VALUES ('', '$strDescription', '$data', '$binFile_name', '$binFile_size', '$binFile_type')&#092;";
  43. $result = mssql_query($sql, $db);
  44. mssql_free_result($result); // it's always nice to clean up!
  45. echo &#092;"<br>Thank you. The new file was successfully added to our database.<br><br>\";
  46. echo &#092;"<a href='test2.php'>Continue</a>\";
  47. }
  48.  
  49. }
  50. else
  51. {
  52. ?>
  53. <HTML>
  54. <BODY>
  55. <FORM METHOD=\"post\" ENCTYPE=\"multipart/form-data\">
  56. <INPUT TYPE=\"hidden\" NAME=\"MAX_FILE_SIZE\" VALUE=\"1000000\">
  57. <INPUT TYPE=\"hidden\" NAME=\"action\" VALUE=\"upload\">
  58. <TABLE BORDER=\"1\">
  59. <TR>
  60.  <TD>Description: </TD>
  61.  <TD><TEXTAREA NAME=\"txtDescription\" ROWS=\"10\" COLS=\"50\"></TEXTAREA></TD>
  62. </TR>
  63. <TR>
  64.  <TD>File: </TD>
  65.  <TD><INPUT TYPE=\"file\" NAME=\"userfile\"></TD>
  66. </TR>
  67. <TR>
  68.  <TD COLSPAN=\"2\"><INPUT TYPE=\"submit\" VALUE=\"Upload\"></TD>
  69. </TR>
  70. </TABLE>
  71. </FORM>
  72. </BODY>
  73. </HTML>
  74. <?php
  75. }
  76. ?>


Wynik na ekranie:
Kod
FILE-> C:\WINNT\TEMP\php3E1.tmp
name-> ala.txt
type-> text/plain
size-> 11
txt-> sadadasd
data-> pliku nie ma
Thank you. The new file was successfully added to our database.

Continue


:/
no więc pytanie... dlaczego nie czyta :|
nospor
nie czyta, bo jak widać nie zrzucil ci pliku na server. A co ci zwraca takie coś:
echo '<br>FILE-> '.$binFile;
Vasquez21
to jest właśnie to co wklejałem u góry:

Kod
FILE-> C:\WINNT\TEMP\php3E1.tmp


edit: oczywiście po wcześniejszym podstawieniu:
  1. <?php
  2. $binFile = $_FILES['userfile']['tmp_name'];
  3. ?>
nospor
Sorki, ale ja wymiekam. Mam dziś cięzki dzień. Niby pisze że wrzucil pli do danej lokalizacji,ale jak się sprawdza czy plik tam istnieje to pisze że nie istnieje. Porażka. A wrzucales tam maly tekstowy plik jak prosilem?
No niewiem. U mnie dziala. nie wiem czemu u ciebie nie chce. Może coś z konfiguracją masz nie tak.
u mie w php.ini jest tak:
Cytat
;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;

; Whether to allow HTTP file uploads.
file_uploads = On

; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
;upload_tmp_dir =

; Maximum allowed size for uploaded files.
upload_max_filesize = 15M

juz chyba nic więcej nie wymyśle. sorki
Vasquez21
Cóż... i tak walczyłeś dzielnie... w każdym razie wielkie dzięki za poświęcony czas.

Cytat
; Whether to allow HTTP file uploads.
file_uploads = On

; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
;upload_tmp_dir =

; Maximum allowed size for uploaded files.
upload_max_filesize = 15M


zmienię tak jak napisałeś, tyle tylko że admina będę musiał przekonać, żeby mi server z php'em reinstalował... a tego od zaraz nie załatwię.

Jeszcze raz dzięki za pomoc. Może ktoś się jeszcze trafi kto miał podobny problem.

PS. próbowałem na małym pliku

EDIT:
zmieniłem... php.ini ale niestety nie pomogło ;(... ma ktoś jeszcze jakiś pomysł questionmark.gif

EDIT:
Udało mi się nareszcie dostać do pliku. Problem wynikał z tego, że docelowy folder, gdzie tymczasowo przechowywane są pliki: C:\WINNT\TEMP\ znajdował się na serverze... do którego nie miałem dostępu. Zrobiłem więc nowy folder i zmieniłem ściężkę dostępu w php.ini i mimo że wydawało mi się, że problem mam za sobą, to mam jeszcze błąd.

KOD:
  1. <?php
  2. //include \"open_db.inc\";
  3.  
  4. if ($_POST['action'] == &#092;"upload\") {
  5. // ok, let's get the uploaded data and insert it into the db now
  6.  
  7. $binFile = $_FILES['userfile']['tmp_name'];
  8. $binFile_name = $_FILES['userfile']['name'];
  9. $binFile_size = $_FILES['userfile']['size'];
  10. $binFile_type = $_FILES['userfile']['type'];
  11. $txtDescription = $_POST['txtDescription'];
  12.  
  13.  
  14. echo '<br>FILE-> '.$binFile;
  15. if (isset($binFile) && $binFile != &#092;"none\") 
  16. {
  17. $data = addslashes(fread(fopen($binFile, &#092;"r\"), filesize($binFile)));
  18. $strDescription = addslashes(nl2br($txtDescription));
  19.  
  20. echo '<br>name-> '.$binFile_name;
  21. echo '<br>type-> '.$binFile_type;
  22. echo '<br>size-> '.$binFile_size;
  23. echo '<br>txt-> '.$strDescription;
  24. echo '<br>data-> '.$data;
  25.  
  26. if (file_exists($binFile))
  27. {
  28.  echo &#092;"<br>jest plik\";
  29.  if (fopen($binFile, &#092;"r\"))
  30. echo &#092;"<br>mozna czytac\";
  31.  else
  32. echo &#092;"nie można czytać\";
  33. }
  34. else
  35. {
  36. echo &#092;"pliku nie ma\";
  37. }
  38.  
  39.  
  40.  
  41.  
  42. $link = mssql_connect(&#092;"SERVER\",\"login\", \"haslo\")
  43. or die(&#092;"Could not connect !\");
  44. mssql_select_db('binary', $link) or die(&#092;"Could not connect database!\");
  45.  
  46. $sql = &#092;"INSERT INTO binary_data (description, bin_data, filename, filesize, filetype) VALUES ('$strDescription', '$data', '$binFile_name', '$binFile_size', '$binFile_type')\";  
  47. // VALUES ('', '$strDescription', null, '$binFile_name', '$binFile_size', '$binFile_type')\";
  48. $result = mssql_query($sql, $link) or die('blad');
  49. mssql_free_result($result); // it's always nice to clean up!
  50.  
  51.  
  52. echo &#092;"<br>Thank you. The new file was successfully added to our database.<br><br>\";
  53. echo &#092;"<a href='test2.php'>Continue</a>\";
  54. }
  55.  
  56. }
  57. else
  58. {
  59. ?>
  60. <HTML>
  61. <BODY>
  62. <FORM METHOD=\"post\" ENCTYPE=\"multipart/form-data\">
  63. <INPUT TYPE=\"hidden\" NAME=\"MAX_FILE_SIZE\" VALUE=\"1000000\">
  64. <INPUT TYPE=\"hidden\" NAME=\"action\" VALUE=\"upload\">
  65. <TABLE BORDER=\"1\">
  66. <TR>
  67.  <TD>Description: </TD>
  68.  <TD><TEXTAREA NAME=\"txtDescription\" ROWS=\"10\" COLS=\"50\"></TEXTAREA></TD>
  69. </TR>
  70. <TR>
  71.  <TD>File: </TD>
  72.  <TD><INPUT TYPE=\"file\" NAME=\"userfile\"></TD>
  73. </TR>
  74. <TR>
  75.  <TD COLSPAN=\"2\"><INPUT TYPE=\"submit\" VALUE=\"Upload\"></TD>
  76. </TR>
  77. </TABLE>
  78. </FORM>
  79. </BODY>
  80. </HTML>
  81. <?php
  82. }
  83. ?>


Przy samym INSERCIE do bazy. Występuje błąd. Jeżeli próbuję wprowadzić $data do bazy, otrzymuję error.
Jeżeli ustawię to pole na null to wszystko działa jak należy.

Ostatnie pytanie, dlaczego nie chce dodać do bazy samego pliku ? :/
tsufu
"INSERT INTO binary_data (id, description, bin_data, filename, filesize, filetype)
VALUES ('', '$strDescription', '$data', '$binFile_name', '$binFile_size', '$binFile_type')

a czemu podajesz pole id ? czesto to pole (nazwa) jest zastrzezone wiec jesli juz wogole id to np. pole_id albo cos innego ale nie ID ! potem...
a czemu wgoole podajesz id puste, jesli masz autoincrement to nie musisz sie zabardzo martwic (bynajmniej dla testow sproboj) i sprawdz czy w pliku nie masz powiedzmy jakis slash tych wszystkich znakow co potem mozna powiedziec ze addslashuje sobie mysql bo nie zawsze dobrze to wczytuje znaycz sie kiedys mialem problem bo jak byl jakis dziwny znak to po prostu przestawal dodawac na tym znaku
Vasquez21
zmieniłem... zapewne pisałeś odpowiedź to wcześniejszych postów winksmiley.jpg teraz jedyn problem mam właśnie z tym zapisem, o którym wspominam trochę wyżej winksmiley.jpg
nospor
Daj to pole typu BLOB
Vasquez21
nie ma takiego typu w mssql'u
aktualnie mam varbinary(16)


EDIT:
poszło winksmiley.jpg
zamieniłem typ na: "sql_variant" i idzie winksmiley.jpg

dzięki wszystkim za pomoc, idę się teraz pobawić z odczytem biggrin.gif
SongoQ
Ja mam takie rozwiazanie.
Ladujesz plik na serwer kodujesz w base64 i wtedy normalnie dodajesz jako varchar.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.