![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 23.05.2003 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Jestem ciemny z php i dopiero się uczę robić własne skrypty. Nie wiem jak zrobić coś takiego: Chcę zrobić skrypt komentarzu na stronkę. Jest już prawie wszystko fajnie gdyby komentarze były poukładane od najwcześniejszego do najstarszego. A jak to nie wypali to chociaż żeby na końcu komentarz była data jego dodania. Bardzo proszę o pomoc. Skrypt znajduje się tu http://fzr.host.sk/news/cos.html |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 20.03.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Hmmm... lepiej by było, gdybyś wkleił tu źródła tych pliczków. Poza tym nie napisaleś, czy skrypt jest na plikach, czy na bazie... Jeśli jest na plikach (a pewnie jest), to zrób tak: Kiedy ktoś dodaje komentarz, otwórz plik w trybie "r", wgraj całą zawartość do jakiejś zmiennej, następnie zamknij go, otwórz ponownie w trybie "w", dodaj nowy komenarz, a następnie zawartość tamtej zmiennej.
|
|
|
![]()
Post
#3
|
|
Grupa: Przyjaciele php.pl Postów: 1 467 Pomógł: 13 Dołączył: 22.02.2003 Ostrzeżenie: (0%) ![]() ![]() |
na plikach, hmmm... jeżeli robisz to na plikach zrób to w XML, żeby nie było problemów z dodawaniem, modyfikacją itp, itd. Jeżeli na db to zrób
Kod ORDER BY `etwas` DESC I już wszystko cacy.
PS. Jeżeli robisz na plikach doradzam DOM, mimo iż jest troche niekompatybilny |
|
|
![]()
Post
#4
|
|
Administrator planeta/IRC Grupa: Przyjaciele php.pl Postów: 385 Pomógł: 0 Dołączył: 19.04.2003 Skąd: Zabrze Ostrzeżenie: (0%) ![]() ![]() |
Jeśli skrypt jest na plikach to wystarczy 'odwrócić' tablicę zwróconą przez funkcję file() funkcją array_reverse.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 23.05.2003 Ostrzeżenie: (0%) ![]() ![]() |
No nie moge cos mi nie wychodzi. Aha ten skrypt jest na plikach.
Skrypt, który pokazyje wpisy: [php:1:f1e77e4da6]<?php $plik=file("komentarze/dane.txt"); for($i=0;$i<count($plik);$i++) { $wpis=split(":",$plik[$i]); echo "<TR>"; echo "<TD valign=top>$wpis[0]</TD>"; echo "<TD valign=top><a class=mail href=mailto:$wpis[1]>$wpis[1]</a></TD>"; echo "<TD>$wpis[2]</TD>"; echo "</TR>"; } ?>[/php:1:f1e77e4da6] Plik, który dodaje wpisy: [php:1:f1e77e4da6]<? $plik=fopen("komentarze/dane.txt","a"); if (!$plik) { echo "Błąd Zapisu do pliku!"; exit; } fputs($plik,"$imie:$mail:$komentarzrn"); fclose($plik); header("Location: pokazwpisy.php"); ?> [/php:1:f1e77e4da6] Zmoderowany przez: [KaMeLeOn] |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 680 Pomógł: 0 Dołączył: 1.10.2002 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
[php:1:1e50fad1e8]<?php
$plik=file("komentarze/dane.txt"); $plik = array_reverse($plik); ?>[/php:1:1e50fad1e8] [KaMeLeOn]: Proszę używać znaczników php... Ile razy można powtarzać... |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 23.05.2003 Ostrzeżenie: (0%) ![]() ![]() |
Jeszce jeden problem, jak zrobić żeby wstawił datę napisania komentarza na końcu komentarza np. pochyłą czcionką.
To jest kod do wysyłania komentarza. Kod <FORM action="dodajwpis.php">
<tr><td align="right"><h2>Imię/nick:</h2></td><td><INPUT name="imie"></td></tr> <tr><td align="right"><h2>e-Mail:</h2></td><td><INPUT name="mail"></td></tr> <tr><td align="right"><h2>Komentarz:</h2></td><td><textarea rows="5" name="komentarz" cols="35"></textarea></td></tr> <tr><td></td><td align="left"><INPUT type="SUBMIT" value="Dodaj komentarz"></td></tr> </FORM> Kod do wyświetlania komentarza. [php:1:499fc797e0]<?php $plik=file("komentarze/dane.txt"); $plik = array_reverse($plik); for($i=0;$i<count($plik);$i++) { $wpis=split(":",$plik[$i]); echo "<TR>"; echo "<TD valign=top>$wpis[0]</TD>"; echo "<TD valign=top><a class=mail href=mailto:$wpis[1]>$wpis[1]</a></TD>"; echo "<TD>$wpis[2]</TD>"; echo "</TR>"; } ?>[/php:1:499fc797e0] A to kod do wstawiania komentarza. [php:1:499fc797e0]<?php $plik=fopen("komentarze/dane.txt","a"); if (!$plik) { echo "Błąd Zapisu do pliku!"; exit; } fputs($plik,"$imie:$mail:$komentarzrn"); fclose($plik); header("Location: pokazwpisy.php"); ?>[/php:1:499fc797e0] P.S. Jeszcze jedna rzecz. Jak zrobić żeby po linku np. pokaż komentarze wyświetlił ilość komentarzy. |
|
|
![]()
Post
#8
|
|
Administrator planeta/IRC Grupa: Przyjaciele php.pl Postów: 385 Pomógł: 0 Dołączył: 19.04.2003 Skąd: Zabrze Ostrzeżenie: (0%) ![]() ![]() |
Jeśli chodzi o date to zapisz do pliku wartość zwróconą przez funkcje time(),
[php:1:0f4b3c6cc7]<?php fputs($plik, "$imie:$mail:$komentarz:".time()."rn"); ?>[/php:1:0f4b3c6cc7] A potem przy wyświetlaniu daj: [php:1:0f4b3c6cc7]<?php echo date('d.m.Y, H:i', $wpis[3]); ?>[/php:1:0f4b3c6cc7] Ps. Dwukropek nie jest najlepszym seperatorem, bo każdy może go wpisać w imię lub treść komentarza i cały wpis sie posypie. Skorzystaj z czegoś bardziej skomplikowanego. |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 20.05.2003 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 15:10 |