Zdravím, chtěl jsem se zeptat zda na serveru můžu vytvářet složky a názvy souborů (obrázků, pdf, doc,.. ) s českou diakritikou. Nemůže to způsobit chybu?
Fórum › PHP
Složka - diakritika
#1 krot
Fungovat to bude, ale budeš mít hodně práce navíc. Obecně se to nedoporučuje zejména kvůli kostrbatým URL, která k takovým souborům povedou.
Zapovězeny jsou pouze dva znaky: Lomítko a NUL.
tim myslíš třebas NUL.pdf? ( - Nebo NULL (jako nulová hodnota v php)?)
A co malá a velká písmena? Viděl jsem skript kde se to všechno přeměnovalo jen na samá malá písmena.
Co bych měl za práci navíc pokud bych používal diakritiku?
Díky za odpověď
#3 krot
NUL je nulový bajt ve stringu. Neplést s NULL, který znamená "nic". 0 je nula. To jsou v PHP 3 různé hodnoty.
Na Unixu a na Linuxu je rozdíl mezi malými a velkými písmeny. Na Windowsech s tím však mohou být potíže.
Zkus si vyrobit URL z názvu souboru s diakritikou - vypadá to docela hnusně a nečitelně. Většina vývojářů se tomu vyhýbá odstraněním diakritiky z názvů. Všimni si URL tohoto vlákna - je také bez diakritiky.
Hazarder :) Diakritka je zlo z hlubin pekelnych. Spousta programovych veci ji koduje do vselijakych slozitych tvaru.
Pr1, jak uvadeji, url. Nektery prohlizec si poradi s diakritikou v adrese, jiny hazi error a vyzaduje spesl tvar. V programu to pak musis specialne osetrovat pres urlencode a pod (to ale musis stejne pouzit kvuli dalsim znakum).
Pr2, url v odkaze html kodu, musis osetrovat pres htmlspecialchars + parametry pres url_encode. Coz bys opet mel, beztak. A pak ten html kod vypada divne.
Pr3, spousta programu v Linux systemu ma problem kopirovat soubor s diakritikou a jinymi paznaky. Normal stav je, kdyz to jde. A pak jsou stavy, kdy to selze a je nutne ten soubor prejmenovat. Nebo to treba stare php neumi smazat ani prejmenovat a musis to pres ftp. A to nektere ftpcka take neumi a musi to delat admin na serveru, kdyz ho pozadas. A nekdy to ani pres ftp nejde smazat, ze bys tam sam nahral verzi bez :)
http://php.net/manual/en/function.str-replace.php
$phrase = "You should eat fruits, vegetables, and fiber every day.";
$healthy = array("fruits", "vegetables", "fiber");
$yummy = array("pizza", "beer", "ice cream");
$newphrase = str_replace($healthy, $yummy, $phrase);
// znaky = explode("", "abcde")
A pak tam musis mit regular, ktery nahradi vsechny ostatni ne a-z, 0-9 znaky za -. Odstrani opakovani ---. Odstrani - na zacatku a na konci. Brnkacka. Tak, proc se nervovat s diakritikou, ze jo? Tu uloz do sql db, tabulk.
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Složka Dokumenty — založil ospaly.stanislav
Reload stránky a složka — založil roman.jaros
FTP - soubor nebo složka? — založil Markaos
Smyčka při přesměrování - složka admin — založil hell
Pc hra a složka INT v Program Files — založil ZAČÁTEČNÍKDE
Moderátoři diskuze