Sam borykałem się z tym problemem. Rozwiązanie okazało się wręcz banalne, ale o tym za chwilę.
Załóżmy że masz stronę www, na której przechowujesz dane w bazie danych. Korzystasz więc z php i mysql. Obojętnie czy są to komentarze internautów, nazwiska, imiona zarejestrowanych użytkowników, czy też inne rodzaje. Jeżeli w danych tych pierwszą literą jest znak bez ogonka czy kreski - wszystko jest ok. Problem zaczyna się gdy pierwszą literę stanowi "kłopotliwy polski znak" - ę,ó,ą,ś,ł,ż,ź,ć,ń. Normalnie w przypadku formatowania tekstu za pomocą php - użyłbyś funkcji ucwords:
Jak widać na powyższym przykładzie - te kłopotliwe znaki dalej pozostają małe (żebrowski) - wszystkie inne zmienia na wielkie liery. Kombinowałem na milion sposobów. Rozwiązaniem okazał się poczciwy CSS.
Wystarczy zastosować styl CSS i jego funkcję text-transform: capitalize:
Po kłopocie. Tym sposobem zmienicie każdą zmienną tak - że każdy jej wyraz będzie zaczynał się z dużej litery. Np:
w bazie: żółta łąka
wyświetli: Żółta Łąka
To znaczy że jakby nie były te wyrazy, wyrażenia, czy zdania zapisane w bazie danych, to zawsze za pomocą tej metody wyświetli je z dużej litery (wszystkie).
Często jest tak że użytkownicy podają (np. podczas rejestracji) imię, nazwę miejscowości z małej litery. Po pobraniu tych danych z bazy i wyświetleniu ich na stronie, mamy potem łukasza z łodzi, zamiast Łukasza z Łodzi. Dzięki zastosowaniu tej funkcji CSS poprawiamy automatycznie te dane.
© copyright: www-4u.pl