Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Ilość komentarzy, proszę o pomoc! :(
paulina94x
post
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 3.06.2008
Skąd: Wałbrzych

Ostrzeżenie: (0%)
-----


Mam pewny prbolem. Otóż, chcę robić komentarze, lecz z pewną ilością, lecz np. że jak będzie już 1 komentarz i jka wstawi się następny to tamten się usunie i ten zastąpi tamten poprzedni (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Może ja to wyjaśnie na przykładzie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Jakiś komentarz który powstał np. 20.08.2008- komentarz nr 1

Teraz chciałabym dodać następny komentarz

Jakiś komentarz który powstał 21.08.2008- komentarz nr 2

I teraz bym chciała aby ten komentarz nr 2 zastąpił komentarz nr 1 (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Tak jakby się sam skasował i na jego miejsce wstawił się inny.
A teraz proszę o jeszcze jeden drugi pomocny skrypt (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
1 komentarz- powstał 20.08
2 komentarz- powtsał 21.08
3 komentarz- powstał 22.08
itd.
50 komentarz- powstał 08.09
i jak będzie 50 to, żeby 15 najstarszych komentarzy się usunęło samo i było przez to miejsce na następne 15 rozumiecie ? Wyjaśniłam wam dobrze i mam nadzieję, że rozumiecie i mi pomożecie, bo ja nie potrafię napisać sama takiego skrytpu to jest narazie dla mnie za trudne ;(
Czekam na pomoc ;*

Ten post edytował nospor 15.07.2008, 20:55:11
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Suh
post
Post #2





Grupa: Zarejestrowani
Postów: 112
Pomógł: 27
Dołączył: 24.08.2007
Skąd: Tarnów

Ostrzeżenie: (0%)
-----


paulina94x, jeżeli masz z tym jeszcze jakiś problem to może to Ci pomoże.

Skoro zdecydowałaś się na używanie plików to na pewno przyda Ci się: fopen i inne funkcje spokrewnione do obsługi plików, a także taka funkcja jak explode() (która np. z takiego łańcucha "aa#bb" tworzy tablice dwuelementową, gdzie [0] == "aa" i [1] == "bb", zaś # - jest separatorem. więcej szczegółów pod adresem http://pl2.php.net/manual/pl/function.explode.php).

Teraz taki dość prosty alborytm :
1. wczytaj zawartość pliku:
  1. <?php
  2. $uchwyt = fopen($nazwa_pliku, "r");
  3. $dane = fread($uchwyt, filesize($nazwa_pliku);
  4. ?>


2. zapisz do tego samego pliku ten nowy komentarz i stara zawartosc np. w ten sposob:
  1. <?php
  2. $uchwyt = fopen($nazwa_pliku, "w");
  3. fwrite($uchwyt, $komentarz."#".$dane);
  4. ?>


Teraz natomiast, skoro chcesz aby np bylo tylko 15 najnowszych komentarzy, przydatne będzie użycie w/w funkcji explode().
Pomiędzy punktami 1. a 2. można np. zrobić coś takiego :
  1. <?php
  2. $dane = explode("#", $dane);
  3. $ile = count($dane);
  4.  
  5. if($ile >= 14)
  6. {
  7. // tutaj napisać odpowiednią pętle, która zadba aby do pliku trafiła zadana ilość 
    komentarz
  8. }
  9. else
  10. {
  11. // jeżeli liczba jest zmniejsza od zadanej to wtedy zapisujemy dane metodą podaną 
    w pkt. 2.
  12. }
  13. ?>


$ile jest w warunku większe lub równe 14, bo zakładam, że skoro w bazie ma być 15 komentarzy to oprócz tego który teraz dodajemy - ma być jeszcze 14 starszych.. gdyby było pytanie skąd ta liczba (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Pzdr
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 4.10.2025 - 00:57