Mam na stronie (
www.akwarium112.info/akwa) system komentowania newsów, Niestety we wszystkich newsach są te same komentarze. Do tego po usunięciu newsa i napisaniu go ponownie są te same komentarze co były. Najprawdopodobnie coś jest nie tak z id newsów.
Kod pliku comment.php:
<?php
include ("body.php");
include ("commentf.php");
include ("newsf.php");
connect();
head();
if (!isset($_GET["site"])){ news($_GET["newsid"]);
showcomment($_GET["newsid"]);
comaddform($_GET["newsid"]);
}
elseif ($_GET["site"] == add){
if (isset($_SESSION["prawa"])){ addcomment($_GET["newsid"], $_POST["tytul"], $_POST["tresc"], $_SESSION["usrid"], $_SESSION["login"]);}
}
elseif ($_GET["site"] == del){
if ($_SESSION["prawa"] > 0){
delcomment($_GET["id"]);}
}
else {
echo "<center>Podana strona nie istnieje, skontaktuj się z administracją</center>";} foot();
?>
Kod pliku commentf.php:
<?php
$newsid=$_POST[newsid];
function news ($newsid){
$result = mysql_query("SELECT * FROM newsy WHERE id='$newsid'") ?>
<h1 class="pagetitle">
<?php echo "<b>$row[1]</b>"; ?></h1>
<div align="right">
<?php echo "$row[2]"; ?></div>
<br>
<div align="left">
<?php echo "$row[3]"; ?></div>
<div align="right"><a href="/forum/profile.php?mode=viewprofile&u=
<?php echo "$row[4]"; ?>">
<?php echo "$row[5]"; ?></a></div>
<br><hr width="100%" color="#AACDFF" size="1px"><br /><br />
<?php
}}
function showcomment ($newsid){
$result = mysql_query("SELECT * FROM komentarze WHERE newsid='$row[0]' ORDER BY id DESC") ?>
<span align="left">Autor: <a href="/forum/profile.php?mode=viewprofile&u=
<?php echo "$row[4]"; ?>"><b>
<?php echo "$row[5]"; ?></b></a></span> <span align="right">
<?php echo "$row[3]"; ?></span><br /><br />
<p align="left">
<?php echo "<b>$row[2]</b>"; ?></p>
<?php
if ($_SESSION["prawa"] > 0){
?>
<a href="comment.php?id=
<?php echo "$row[0]"; ?>&site=del">Usuń</a><br />
<?php
}
?>
<br /><br />
<?php
}}
function comaddform ($newsid){
if (isset($_SESSION["prawa"])){ ?>
<div align="center">Dodaj komentarz:<br /><br />
<form method="post" action="comment.php?site=add&newsid=$newsid">
<textarea name="tresc" rows="10" cols="42"></textarea><br>
<input type="submit" name="Submit" value="Skomentuj">
</form>
</div>
<?php
}
else {
echo "Musisz być zalogowanym, aby dodać komentarz";} }
function addcomment ($newsid, $tytul, $tresc, $usrid, $login){
$result = mysql_query("INSERT INTO komentarze (newsid, tresc, data, link, dodal) VALUES ('$newsid', '$tresc', '$data', '$usrid', '$login')") echo "<center>Komentarz został dodany</center>"; }
function delcomment ($id){
$result = mysql_query("DELETE FROM komentarze WHERE id='$id'") echo "<center>News został usunięty</center>"; }
?>
PS. te pliki są cześcią cms'a na którym jest oparta cała strona.
-------------------------
do PHP są odpowiednie znaczniki BBCode
a nie tylko [code] do wszystkiego
~Cienki1980