Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 4 odgovora
  • 4.455 pregleda

Najnovija ↓

PHP-MySQL, Download sadržaja BLOB polja 10.04.2016. u 22:27 · pre 128 meseci #1
Imam ovakav problem i nemogu da ga rešim.
Imam tabelu MySQL-u i njoj polje FILED tipa MEDIUMBLOB. U to polje hoću da sačuvam različite dokumente tipa *.doc, *.docx, *.pdf i tako dalje. Kada uploadujem dokument u tabelu sve je u redu.
Sadržaj koji se sačuva u polje je ispravan. To znam jer kad downloadujem sadržaj polja FILED pomoću PHPMyAdmion dobijem datoteku "jnfiles-filed.bin", kojoj kad promenim to bin u doc ponaša se ka word dokument i u njoj piše to što treba.
Isto i kada sadržaj polja, pomoću naredbe file_put_contents('dokument.doc', $filed); zapišem u filesystem servera dobijem ispravan MS-WORD dokument.
Ali
Kada sadržaj polja FILED downloadujem pomoću koda:
Code:

    <?php     
     $con = mysql_connect("localhost", "xxxxxxxxxxxx", "xxxxxxxx")or die(mysql_error());
          mysql_query("SET NAMES 'utf8'"); 
            mysql_select_db("direkcij_baza") or die(mysql_error());
    
      $jnfiles = mysql_query("SELECT filename, fileext, size, filed FROM jnfiles WHERE id='$_GET[id]' and stavka='$_GET[stavka]'");
      list($filename, $fileext, $size, $filed) =mysql_fetch_array($jnfiles);
          header("Content-length:$size");
          header("Content-type:$fileext");
          header("Content-Disposition: attachment; filename=$filename");
          //header("Content-transfer-encoding: binary");
          //file_put_contents('dokument.doc', $filed);
          echo $filed; 
    ?>    

onda dobijem neispravan fajl koji izgleda ovako:
Code:


    ��#ࡱ#�################;###��    #####################################����########���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

Sa greškom dobijam dokumente tipa *.zip, *.xls.
Dokumenti tipa *.PDF su ispravni.

Probao sam kako to radi na UBUNTU 14.04 LTS, DEBIAN 7 wheezy i Windows XP i radi isto. U svim sistemima browser je Mozilla Firefox.

Ja ne znam u čemu je problem. Najverovatnije da se greška desi prilikom transfera ili prilikom snimanja fajla na računaru gde se downloaduje.
Pomagajte, ko je radio tako nešto

Re: PHP-MySQL, Download sadržaja BLOB polja 12.04.2016. u 09:39 · pre 128 meseci #2
Koji encoding ti je tabela i koji encoding ti je konekcija?
Potpis
[Ovu poruku je menjao VladaSu dana 14.06.2003. u 11:22 GMT+1]
Re: PHP-MySQL, Download sadržaja BLOB polja 24.05.2016. u 20:15 · pre 127 meseci #3
E, ovo mi baš i nije jasno
na tabeli piše latin1_swedish_ci,
a u konekciji mysql_query("SET NAMES 'utf8'");

samo polje je mediumblob i ništa više
gde to mogu da pogledam?
Re: PHP-MySQL, Download sadržaja BLOB polja 24.05.2016. u 20:26 · pre 127 meseci #4
Ovo set names utf8 ti postavlja encoding konekcije... Nema veze sa tabelama.
I naravno,ukoliko mozes, nemoj cuvati fajlove direkt u bazi,mozes samo putanje do istih.
Re: PHP-MySQL, Download sadržaja BLOB polja 03.06.2016. u 09:00 · pre 126 meseci #5
Enkoding konekcija nema veze sa tabelama ali ima sa podacima u tabeli jer mysql radi konvertovanje iz lating1 u utf8 i tu zabrlja.
Prebaci tabelu u utf-8.
Da, gledaj da fajlove ne cuvas u bazi.
Potpis
[Ovu poruku je menjao VladaSu dana 14.06.2003. u 11:22 GMT+1]
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme