Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Licznik
Forum PHP.pl > Forum > Przedszkole
Matimor
Witajcie
Jak mogę zrobić licznik znaków w wpisanym tekście? Chodzi o to, że gracz wpisuje dany text w TextArea i po kliknięciu zlicz wpisuje mu ilość znaków & we wpisanym przez niego tekście.
blooregard
JavaScriptem.

Musisz napisać funkcję, która po otzrymaniu zdarzenia onkeypress() na polu textarea będzie sprawdzać, czy wciśnięty klawisz ma kod znaku & i zwiększac licznik o 1. Licznik możesz wyświetlać na bieżąco np. w jakimś div-ie, zmieniając mu w tej f-cji (po sprawdzeniu znaku) zawartość poprzez innerHTML.
kfc4
A jak ktoś ma wyłączonego JS? w PHP chyba substr_count robi coś takiego.
blooregard
A, nie zauważyłem, że dopiero po kliknięciu ma zliczać, założyłem, że na żywo ma pokazywać.

Tak, no w tym przypadku nie ma sensu bawić się w JS. Po przesłaniu formularza i zawartości textarea jest parę możliwości zliczenia tych &, między innymi ten, który podałeś @kfc4.
kefirek
strlen
blooregard
Jeszcze to sie przyda:
http://pl.php.net/manual/pl/function.count-chars.php
CyberDuck_
Chodzi Ci pewnie o cos takiego jak w tym Shoutbox ?
http://www.fanklubcoelho.pl/kontakt.php

Przy wpisywaniu wiadomosci jest przy kazdym kliknieciu
zliczna ilosc znakow. Ja kiedys zrobilem tak ze pokazuje
ile jeszcze mozna wpisac, ale mozna to rozwiazac na rozne
sposoby ...

Ja to zrobilem tak, ze :
1. Obok okienka z wpisywaniem wiadomosci umiescilem znacznik i
z poczatkowa wartoscia 500 :
  1. $maxLenght = '500';
  2. echo "<i id='formularzpod'>$maxLenght</i>";

Jak widzisz znacznik jest oznacznony identyfikatorem.
Dzieki temu miedzy znaczniki <i></i> mozna wpisac
dowolna wartosc np za pomoca javascript .
No i sama funkcja obliczajaca :
  1. <script language=\"JavaScript\">
  2. function licz() {";
  3. ilosc = document.post.messagesb.value.length;
  4. document.getElementById(\"formularzpod\").innerHTML = $maxLenght - ilosc;
  5. }
  6. </script>

Nie jestem mocny w java, ale udalo mi sie wtedy cos takiego napisac.
Jak to wywolac ?
Bardzo prosto. Poprzez dodanie do formularza okienka wpisu reagujacego
na przycisniecie dowolnego przycisku klawiatury. W momencie przycisniecia
jest wywolywana funkcja napisana w javaskrypt :
onkeyup='licz()'
czyli tak :
  1. <input type='text' name='wiadomosc' value='$wiadomosc' size='70' maxlength='$maxLenght' onkeyup='licz()'>


Powodzonka snitch.gif
Spawnm
CyberDuck_ , java != javascript
I czytaj ze zrozumieniem zanim napiszesz post.
Bo twój nic nie wnosi do tematu.
CyberDuck_
Ja to rozumiem wszystko.
Podalem jedno z rozwiazan. Moze sobie
wybrac sam. Po co ma klikac w zlicz jak moze
sie to robic odrazu bez klikania ? Ale to jest jego wybor.
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.