Autor Zpráva
Walter
Profil *
Nevite jak bych pridal jednoduche komentare do guestbooku, nejak tutorial?

Dik
avaranger
Profil
komentare se v PHP delaji bud:

//komentar
nebo /* komentar klidne na vic radku */
Walter
Profil *
ja myslim komentare k prispevku guestbooku, ale nevadi spatne jsem to zformuloval.
avaranger
Profil
jeste jinak a bez slova komentare, prosim...

chapu to tak, ze nekdo neco napise do GB a vy k tomu jeho prispevku chcete jeste pridavat nejake komentare... tak to bych delal... jak ono se tomu rika... relacni databazi (snad se to tak jmenuje)

obcne nejak takhle:

Tabulka s prispevky:
ID | TEXT | AUTOR | DALSI VECI

tabulka s komentari:
ID | ID_PRISPEVKU | TEXT | AUTOR | ... atd.

pricemz po rokliknuti prispevku vyberete z databaze komentare, u kterych odpovida ID_PRISPEVKU

SELECT TEXT, AUTOR FROM komentare WHERE ID_PRISPEVKU = $prispevek;

pricemz v $prispevek mate ulozene aktualni ID prispevku ;)

je to to co ste chtel?
Walter
Profil *
Jo nejak tak, nevite kde bych sehnal tutorial na to?
avaranger
Profil
ee bohuzel
avaranger
Profil
a co je za problem s tim mym zdrojakem?
Juan
Profil
takze.. udelas si tabulku s nazvem articles. ta bude obsahovat tyto sloupce: comment_parrent, comment_id, comment_date, comment_article_id;

PHP kod na vypis pak bude nasledujici..
<?php
/** Vypis komentaru
* @param string $article_id - unikatni identifikator clanku. Musi se uvest
* @param string $id - unikatni identifikator comentare. Nemusi se uvest
* @param string $odstup - odstup komentare od kraje
* @copyright Jan Jílek, johny-vk@seznam.cz
*/
function comment_tree($article_id = 0, $id = 0, $odstup = 0){
$sql=mysql_query("select * from comments where comment_parrent='$id' and comment_article_id='$article_id' order by comment_date desc");
while($komentar=mysql_fetch_array($sql)){
//Tady si to uprav
echo "<div style=\"margin-left:" . $odstup . "em\">" . $komentar["comment_id"] . "</div>";
//konec uprav
comment_tree($article_id, $neco["comment_id"], $odstup + 2); // $odstup + 2 si muzes upravit na jakekoliv cislo
}
}
?>
24k
Profil *
echo "<div style=\"margin-left:" . $odstup . "em\">" . $komentar["comment_id"] . "</div>";

koukam ze tady nekdo dela komentare s vyuzitim rekurze.. no budiz, ale coz takhle misto vnitrniho stylopisu pouzit SEZNAMY (UL,LI) ?
Juan
Profil
to 24k: jj rekurze je moje oblibena vec :) vim ze to neni moc elegantni (seznamy sou lepsi) ale na ukazku to staci ne? :o))
avaranger
Profil
To by bylo docela tezsi.... protoze musis pak zjistovat kde se meni odstup a tam umistovat <ul>... Pravda, ze semanticky by to bylo ale o 100% lepsi.
Juan
Profil
Ok... posilam upravenej zdrojak :o)) Spokojeni?
<?php
/** Vypis komentaru
* @param string $article_id - unikatni identifikator clanku. Musi se uvest
* @param string $id - unikatni identifikator comentare. Nemusi se uvest
* @param string $odstup - odstup komentare od kraje
* @copyright Jan Jílek, johny-vk@seznam.cz
*/
function comment_tree($article_id = 0, $id = 0, $odstup = 0){
$sql=mysql_query("select * from comments where comment_parent='$id' and comment_article_id='$article_id' order by comment_date desc");
while($komentar=mysql_fetch_array($sql)){
echo "<li>\n";

for($o=0; $o < $odstup;$o++){
echo "<ul><li>\n";
}
echo $komentar["comment_id"];

//if($odstup != 0){
for($o=0; $o < $odstup;$o++){
echo "</li></ul>\n";
}
echo "</li>\n";
comment_tree($article_id, $neco["comment_id"], $odstup + 1);
}
}
?>
avaranger
Profil
pekne :)
Juan
Profil
jej.. mam tam chybu... misto
comment_tree($article_id, $neco["comment_id"], $odstup + 1);
ma byt
comment_tree($article_id, $komentar["comment_id"], $odstup + 1);
:o))
avaranger Diky :o))
Toto téma je uzamčeno. Odpověď nelze zaslat.