天天看点

php mysql 评论_用PHP和MYSQL的用户评论回复系统

非常抱歉,因为这将是一个很长的职位。我是MYSQL的初学者,我刚刚开始学习。

我正在尝试制作用户评论 - 回复系统。我完全被卡住了。

我有一个表名为'post'的数据库,用以下结构进行评论

TABLE `post` (

`id_posta` int(4) NOT NULL,

`tekst_posta` text NOT NULL,

`name` text NOT NULL,

`slika_posta` blob NOT NULL,

`type` text NOT NULL,

`vreme_posta` datetime NOT NULL,

`id_autora` int(4) NOT NULL,

`ime` varchar(50) NOT NULL,

`prezime` varchar(100) NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET=latin1;和表名'komentar',其中书面回复评论

TABLE `komentar` (

`id_komentara` int(11) NOT NULL,

`tekst_komentara` text NOT NULL,

`id_aut_komentara` int(4) NOT NULL,

`id_autora` int(4) NOT NULL,

`vreme_komentara` datetime NOT NULL,

`id_posta` int(4) NOT NULL,

`imek` varchar(50) NOT NULL,

`prezimek` varchar(100) NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET=latin当我撰写所有评论时,一切都很完美。

$upit = "SELECT id_posta, slika_posta, vreme_posta, tekst_posta, id_autora, ime, prezime FROM post ORDER BY `post`.`id_posta` DESC;";

$postovi = $con->query($upit);

if($postovi->num_rows > 0)

{

while($red = $postovi->fetch_assoc())

{

$idp = $red["id_posta"];

echo "

echo "

";

echo $red["ime"]. " " . $red["prezime"]. ':' ;

echo "

";

echo "

";

echo $red["tekst_posta"];

echo "

";

if( $red["slika_posta"] != '' ){

echo '

';

}

echo "

";

echo "

";

echo 'Objavljeno' . ' ' . $red["vreme_posta"];

echo "

";

echo "

";

echo "

";

echo "

";

echo "

";

echo REPLY ?????

echo "

";

echo "

Lajk";

echo "

";

echo "

";

}

}

$con->close();当我尝试在回复td中回复回复给适当的评论时,问题就出现了。

我试试这个....

$con = new mysqli ("localhost", "root", "", "introduce");

$upit = "SELECT id_posta, slika_posta, vreme_posta, tekst_posta, id_autora, ime, prezime FROM post ORDER BY `post`.`id_posta` DESC;";

$postovi = mysqli_query($con,$upit);

if($postovi->num_rows > 0)

{

while($red = $postovi->fetch_assoc()) {

echo "

echo "

";

echo $red["tekst_posta"];

echo "

";

echo "

";

$upit1 = "SELECT * FROM komentar INNER JOIN post ON post.id_posta=komentar.id_posta ;";

$komentari = mysqli_query($con,$upit1);

while($red = $komentari->fetch_assoc()) {

echo "

echo "

";

echo $red["tekst_komentara"];

echo "

";

echo "

";

}

}

}结果是

2 2 (second post)

1-1 2-1 (first reply)

1-2 2-2 (second reply)

2-1

1 and should be 1 (first post)

1-1 1-1 etc,etc....

1-2 1-2

2-1

DIV>

DIV>

那我试试这个

$con = new mysqli("localhost", "root", "", "introduce");

$sql = "SELECT * FROM komentar INNER JOIN post ON post.id_posta=komentar.id_posta ; ";

$komentari = $con->query($sql);

if($komentari->num_rows > 0)

{

while($red = $komentari->fetch_assoc())

{

echo $red["tekst_posta"];

echo "

";

echo $red["tekst_komentara"];

}

}

DIV>

DIV>

结果是

1

1-1

1

1-2

2

2-1 duplicate post on every replay....

2

2-2

2

2-3

DIV>

DIV>

接下来我尝试...

$sql = "SELECT id_posta, slika_posta, vreme_posta, tekst_posta, id_autora, ime, prezime FROM post ORDER BY `post`.`id_posta` DESC;";

$sql .= "SELECT * FROM post JOIN SELECT * FROM komentar WHERE komentar.id_posta = 'post.id_posta'";

DIV>

DIV>

我尝试GROUP BY并尝试,然后尝试.....

我在考虑阵列....所以,我要求你的建议,因为我永远无法这样做。

没有找到相关结果

已邀请:

与内容相关的链接

0 个回复

为什么被折叠?

0 个回复被折å