Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Prosta rzecz, nie wiem jak zrobić(sortowanie)
kam10
post
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
Go to the top of the page
+Quote Post
Cod
post
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.
Go to the top of the page
+Quote Post
Jabol
post
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
Go to the top of the page
+Quote Post
Cudi
post
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.
Go to the top of the page
+Quote Post
kam10
post
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]
Go to the top of the page
+Quote Post
KaMeLeOn
post
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ć...
Go to the top of the page
+Quote Post
kam10
post
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.
Go to the top of the page
+Quote Post
Cudi
post
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.
Go to the top of the page
+Quote Post
bu
post
Post #9





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 20.05.2003

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


np. Ŕ (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post

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: 23.08.2025 - 15:10