Komentator na plikach


(Darom82) #1

W jaki sposob na mojej stronce: http://www.history.is.net.pl/?download&cat=0 zrobić mozliwośc komentowania pobieranych plików ?

Tak jak jest to tutaj zrobione: http://www.phpbbhelp.pl/archiwum/download.php?d=585

Pisze pogrubionym czarnym komentarze (ilość komentarzy) i jest tam widoczna taka belka, ze kazdy komentarz w innej tabelce.

Jak takie cos zrobic u mnie na stronce ? Fajnie by było na pliku txt.

Jesli chodzi o te komentarze w tabelce to udalo mi sie przygotowac tylko cos takiego:

{author} ({date}) napisał(a)

{comment}

I teraz reszte kodu niewiem jak napisac. Ale chcialbym miec to zrobione na pliku txt. Moglbym to zrobic tak, ze w pliku add.php (plik dodaj.php juz mam na serwerze) zrobilbym tak:

   Komentarz        Podpis    
 

<?php if(isset($_POST['action']) && $_POST['action']==1) echo <[/code] W pliku send.php (plik wyslij.php juz mam na serwerze) zrobilbym tak:
[code]<?php if ($_GET['wyslano']!=1) { if(empty($_POST['nick']) || empty($_POST['mail']) || empty($_POST['www']) || empty($_POST['temat']) || empty($_POST['pole'])) { header('Location: http://www.history.is.net.pl/?news&id='.$\_GET['id'].'&wyslano=1'); } $nick = $_POST['nick']; $mail = $_POST['mail']; $www = $_POST['www']; $temat = $_POST['temat']; $pole = $_POST['pole']; $nick = HTMLSpecialChars($nick); $mail = HTMLSpecialChars($mail); $www = HTMLSpecialChars($www); $temat = HTMLSpecialChars($temat); $pole = HTMLSpecialChars($pole); $datanow = date("d.m.Y H:i"); $wynik = $datanow . '|||' . $nick .'|||'. $mail . '|||' . $www . '|||' . $temat . '|||' . $pole . "\n"; $plik = 'comments/'.$_GET['id'].'.txt'; $fp = fopen($plik, "a"); fwrite ($fp, $wynik); fclose($fp); } ?>
W pliku show.php (plik pokaz.php juz mam na serwerze) zrobilbym tak:

<?php

if (!file_exists('comments/'.$_GET['id'].'.txt'))

{

    file_put_contents('comments/'.$_GET['id'].'.txt', '');

    chmod('comments/'.$_GET['id'].'.txt', 0777);

}


$file = file('comments/'.$_GET['id'].'.txt'); rsort($file); $file = file('comments/'.$_GET['id'].'.txt'); $file = array_reverse($file);

foreach($file as $key => $value)

{

   $data = explode('|||', $value);


   echo ''. $data[0] . ' | ' . $data[1] .'
';

   $tresc = $data[5];

   echo ''. $tresc .'
';

}

?>[/code]


W pliku download.php dac to:

[code]<?php $comments=0; $file = file('comments/'.$_GET['id'].'.txt'); rsort($file); $file = file('comments/'.$_GET['id'].'.txt'); $file = array_reverse($file); foreach($file as $key => $value) { $comments++; } ?> Komentarze (<?=$comments?>) {author} ({date}) napisał(a)

{comment}

<? include("show.php"); ?>

<? if($_GET['wyslano']==1) echo '

» Ten program już był komentowany !'; else include("add.php"); ?>

Czy dobrze to robie ? Pliki w nawiasach z polska nazwa mam juz na serwerze do innego komentowania na mojej stronce.

Czy jesli jest cos nie tak to moglby mi ktos poprawic te kody na takie, zeby bylo tak jak chce miec w dziale download ? Bardzo prosze Was o pomoc w tej sprawie.


(Grzesie K) #2

Możesz mi wyjaśnić dlaczego nie chcesz skorzystać z MySQL?


(Darom82) #3

Dlatego ze chwilowo mam brak dostepu do mojej bazy danych. Dlatego wole zrobic to na plikach txt, czy moze ktos mi pomoc przy tym ??


(Grzesie K) #4

Dobrym pomysłem było by użycie darmowej bazy danych (jest takich dość dużo), a następnie przeniesie danych do swojej bazy danych. Pisanie takiego kodu to strata czasu.