Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Zmiana wielości liter
Forum PHP.pl > Forum > Przedszkole
Maciek_#_&
Witam,
Chciałbym napisać skrypt który zamienia np. "TEKST DUZYMI LITERAMI" na "Tekst duzymi literami"
Użyłem funkcji ucfirst()

Wymyśliłem coś takiego:

  1. <?php
  2. if (!$_POST['tresc'])
  3. {
  4. echo "Nie uzupełniłeś wszystkich rubryk.". "<br />";
  5. echo ('<a href="java script:history.back(1)">Wróć i popraw</a>');
  6. } else{
  7.  
  8. $txt =
  9. "Tekst ".$_POST['tresc']."";
  10.  
  11.  
  12. if(ucfirst ($txt)){
  13. }else{
  14. echo "Blad";
  15. }
  16. }
  17. ?>
  18. <html>
  19. <?php $txt ?>
  20. </html>


Biała strona, prosiłbym o podpowiedź smile.gif


Dzięki.
Pawel_W
a nie zapomniałeś o echo? winksmiley.jpg

poza tym nie zapisujesz nigdzie wyniku funkcji, dlatego nic się nie zmieni winksmiley.jpg
Wicepsik
No to walnij echo ucfirst($txt);
Maciek_#_&
Cytat
poza tym nie zapisujesz nigdzie wyniku funkcji, dlatego nic się nie zmieni


Coś mi świta, ale nie na tyle żebym napisał, coś więcej ? smile.gif
Pawel_W
Cytat
Jakieś sugestie ?

patrz mój post winksmiley.jpg
Maciek_#_&
Cytat
poza tym nie zapisujesz nigdzie wyniku funkcji, dlatego nic się nie zmieni


Cytat(Maciek_#_& @ 15.07.2010, 19:58:32 ) *
Coś mi świta, ale nie na tyle żebym napisał, coś więcej ? smile.gif


;)
kilas88
Jeśli strona jest kodowana w UTF-8 to warto by dodać obsługę Multibyte String (UTF-8).
Pawel_W
ehh...
  1. <?php
  2. if (!$_POST['tresc'])
  3. {
  4. echo "Nie uzupełniłeś wszystkich rubryk.". "<br />";
  5. echo ('<a href="java script:history.back(1)">Wróć i popraw</a>');
  6. } else{
  7.  
  8. $txt =
  9. "Tekst ".$_POST['tresc']."";
  10.  
  11.  
  12. if(!($txt = ucfirst ($txt))){
  13. echo "Blad";
  14. }
  15. }
  16. ?>
  17. <html>
  18. <?php echo $txt; ?>
  19. </html>
Maciek_#_&
Również nie zamienia.

e; Ok, już sobie poradziłem smile.gif

Dzięki


Pawel_W
a patrzyłeś na manual do tej funkcji? ona zmienia pierwszą literę, reszta zostaje tak jak była, bez zmiany na małe smile.gif

zamień to:
  1. if(!($txt = ucfirst ($txt))){

na
  1. if(!($txt = ucfirst (strtolower($txt)))){
thek
Tylko jest jedno ale... Jeśli strona jest w ISO to wyjdzie kapa. Strtolower i kilka innych działa na iso i polskie znaki ignoruje podczas konwersji. Sam sprawdź
strtolower('ŚwiatŁo')
Ja mialem plik kodowany jako ANSII i nie wyszło fajnie. Tak więc wiele zależy nie tylko od zastosowanych funkcji.
Maciek_#_&
strona kodowana w utf , Polskie znaki są poprawnie wyświetlane.
thek
Pamiętaj, że funkcje stringowe były przeznaczone do operacji w kodowaniu iso-8859-1, każde inne jest tylko mniej lub bardziej pokiereszowaną "łatą" by być zgodne z tym kodowaniem. Stąd takie jaja z kodowaniem naszym, to znaczy iso-8859-2. Skoro masz problem, to znaczy, że warto przyjrzeć się funkcjom multibyte.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.