Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Przechowywanie znaków specjalnych w DB w taki sposób, aby wyświetlać się poprawnie na stronie i nadal znajdować obraz o tej samej nazwie

Przede wszystkim zobacz UTF-8 przez całą drogę za wszystkie rzeczy, które musisz zrobić poprawnie, aby znaki spoza ASCII działały ogólnie w Twojej aplikacji.

Po drugie, jest… trudne… udostępnianie plików o nazwach innych niż ASCII przez Internet. 1) Musisz się upewnić, że kodujesz wszystkie adresy URL dla tych plików z kodowaniem procentowym, jak już to robisz. 2) Serwer sieciowy przyjmie ten adres URL, procentowo zdekoduje go do ciągu bajtów, a następnie poprosi bazowy system operacyjny/plikowy o wyszukanie pliku o nazwie z tym ciągiem. To jest trudna część:nie będziesz wiedział dokładnie, jakiego ciągu bajtów twój system operacyjny/system plików używa do dokładnego reprezentowania tego pliku. Musisz najpierw to rozgryźć, a następnie zakodować adres URL, aby dekodował dokładnie do prawidłowego ciągu.

A kiedy przenosisz się na inny serwer, zwłaszcza jeśli przenosisz się z systemu Windows na *NIX lub odwrotnie, możesz to zrobić od nowa, ponieważ ten system działa zupełnie inaczej.

Krótko mówiąc, często jest to bardziej kłopotliwe niż jest warte, i powinieneś przechowywać swoje obrazy z nazwami tylko ASCII, aby tego uniknąć. Szczególnie w przypadku krajów sensowne byłoby użycie dwuznakowych kodów krajów w nazwie obrazu (np. „cz.jpg”).




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zaktualizować samodzielnie hostowane wordpress i zainstalowane wtyczki witryny na żywo do najnowszych dostępnych wersji bez żadnych problemów?

  2. Mysql przekroczył błąd max_user_connections na stronie c#

  3. Błąd MySQL:zapytanie było puste

  4. Podejście do wielu zapytań MySQL za pomocą Node.js

  5. Pełny tekst MySQL z rdzeniami