Autor Zpráva
aran
Profil *
Ahoj,

Chci se zeptat jestli někdo neví, proč se mi ve forefoxu soubor, který má v sobě mezery, stahuje jako doc, přitom původní soubor se jmenuje třeba "auto- 123 123 132.rar", ale stahne se soubor auto-.doc, u ie se přitom stahuje správně rar, ale mezery se tam nahradí podtržítkem. Jde to nějak vyřešit?

$adresa = $adresar . rawurldecode($row['nazev']);

				$nazev = rawurldecode($row['nazev']);

				if(file_exists($adresa))

					{

						
						header("Cache-Control: no-store, no-cache, must-revalidate");
						header("Cache-Control: post-check=0, pre-check=0", false);
						header("Pragma: no-cache");
						Header("Content-Length: ".filesize($adresa));
						Header("Content-Disposition: attachment; filename=" . $nazev);
						header("Content-Type: application/force-download");
						header("Content-Transfer-Encoding: binary");
						header("Pragma: no-cache");
						header("Expires: 0");
						@readfile($adresa);



					}
Erwinero
Profil
ak si urobil upload cez ie, a potom ideš na firefox, pochybujem o otvorení toho súboru.
aran
Profil *
O to ale vůbec nejde, soubor se jmenuje na serveru pořád stejně s mezerama,ale stahuje se odlišně ve firefoxu a v ie, ve fierfoxu se stáhne jako doc a nazev staženýho souboru končí první mezerou originálního souboru, takže chybí připona a asi se nějak defaultně nahradí připonou doc, když to pak přejmenuju, tak se ten rar normálně otevře, v ie se to stáhne v pohodě, tak jak se to jmenuje celý, akorát mezery v originálním souboru se nahradí podtržítkem při stahování
Erwinero
Profil
aha, promiň.
Skús to komprimovat, nebo zabalit na dvakrát.
aran
Profil *
No já nevim, ale to asi nepomůže, těch souborů je asi 1200, jejich názvy jsou uložený v databázi a ručně předělávat 1200 souborů, to by asi nešlo.

Potřebuju nějakým způsobem udělat, aby ten skript, co jsem sem dal, dokázal stáhnout i přes firefox soubor, kerej má v názvu mezery, teď ten soubor sice najde v databázi i na serveru a dá možnost ho stáhnout, ale název při stahování končí první mezerou, takže když mam třeba soubor "auto 123 bla.rar", tak se přes firefox stahuje "auto.doc".

Fakt se s tim nikdo nesetkal?
xmark
Profil
aran:
Zkusil jsem si to a soubor s názvem "auto 123 bla.rar" se mi stáhne a uloží bez toho, že by ho FF jakkoliv přejmenoval. Takže problém není ve FF. Buď máš chybu v tom skriptu, nebo máš ve FF nějaký plugin, který něco špatně zvládá.
aran
Profil *
Jednoduše.

na serveru mam složku ve který mam zabalený soubory, ty soubory maj názvy ve kterých jsou mezery v názvu, třeba "auto 123.rar"

Pak mam databázi, ve který mám zapsaný názvy těch souborů, z tý databáze ten název pomocí id vytáhnu a použiju ten skript, co jsem sem dával nahoře, na stahování.

Jenže, když ten soubor stahuju ve firefoxu, tak se neukládá ten soubor pod názvem auto 123.rar, ale pod názvem auto.doc, ten doc se tam asi přidá nějak defaultně, když to nemá žádnou příponu nebo já nevim proč se to tam takhle dá. Nicméně, pokud ten staženej soubor pak přejmenuju na rar, tak jde otevřít, ale fak se mi nelíbí ten název a hlavně změna přípony.

Ovšem, když tentýž soubor stejným způsobem stahuju přes IE, tak se ukládá soubor auto_123.rar a vše je v pořádku.
aran
Profil *
xmark:

No mám firefox 3.6 a win 7 a dělá u každýho souboru s mezerema, docela rád byh se toho zbavil a fakt mě nenapadá, čim by to mohlo být, firefox nějak zasekanej pluginama nemam

mam tam javu, adobe acrobat, microsoft office 2010, mozilla default, quicktime, flash a silverlight
xmark
Profil
aran:
Tobě to FF dělá, mně ne. Z toho plyne, že chyba je buď na straně serveru, který se chová jinak, než si myslíš, nebo ve tvém FF.
Dej sem link na to, co stahuješ. Podle toho, jestli to někdo s FF stáhne v pořádku, můžeš postupovat dál.
aran
Profil *
Tady je ukázka, stahuje se mi opět doc, soubor by měl být auto 123.rar, ale stahuje se mi auto.doc

http://ukazka49.wz.cz/ic/down.php?id=10000
margin
Profil *
Zřejmě s tím nic neuděláš, jediná možnost je změnit na serveru jména souborů. Koukni na HTTP hlavičky:

http://ukazka49.wz.cz/ic/down.php?id=10000

GET /ic/down.php?id=10000 HTTP/1.1
Host: ukazka49.wz.cz
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; cs; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 (.NET CLR 3.5.30729)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: cs,en-us;q=0.7,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: windows-1250,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://diskuse.jakpsatweb.cz/?action=vthread&forum=9&topic=117500

HTTP/1.1 200 OK
Date: Sun, 07 Nov 2010 22:14:54 GMT
Server: Apache
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Length: 20
Content-Disposition: attachment; filename=auto 123.rar
Content-Transfer-Encoding: binary
Expires: 0
Keep-Alive: timeout=6, max=100
Connection: Keep-Alive
Content-Type: application/force-download
xmark
Profil
Nevím, toto už není úplně moje parketa. Ale jestli bude závěr, že je potřeba soubory hromadně přejmenovat (fyzicky a pak v db), tak je to asi na půl hodiny práce, ať jich je stovka nebo deset tisíc. Včetně ošetření vzniklých duplicit.
aran
Profil *
A čim to teda může být? serverem? ona ta celá databáze pak půjde jinam.

A děje se to teda i vám?
aran
Profil *
Jinak, já bych jako nebyl proti to přejmenovat,ale se souborama pres php nebo neco jinyho pracovat moc neumim

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: