의견 삭제 양식에 문제가 있습니다. 어떻게 든 사용자가 자신의 의견을 삭제할 수 있도록 만들고 싶지만, 지금까지는 모든 댓글에 대해 삭제 만 작성했습니다. 자신의 것인지 아닌지는 중요하지 않습니다.사용자가 자신의 의견을 삭제할 수있게 하시겠습니까?
여기 내 양식이다
<form action="<?php echo $editFormAction; ?>" method="POST" name="CommentForm">
<table>
<tr><td colspan="2"></td></tr><tr><td><input type="hidden" name="name" value="<?php
echo $_SESSION['MM_Username']; ?>" /></td></tr>
<tr><td colspan="2">Заглавие:</td></tr><tr><td><input type="text" name="title"
style="width:300px; height:20px;" /></td></tr>
<tr><td colspan="2">Коментар</td></tr>
<tr><td colspan="2"><textarea name="comment" style="width:450px; height:150px;">
</textarea></td></tr>
<tr><td colspan="2"><input type="submit" name="submit" value="Коментирай"
style="padding:5px; color:#069"/></td></tr>
</table>
<input type="hidden" name="MM_insert" value="CommentForm" />
</form><br /><br />
<?php
$getquery=mysql_query("SELECT * FROM comments ORDER BY id DESC");
while($rows=mysql_fetch_assoc($getquery))
{
$id=$rows['id'];
$title=$rows['title'];
$comment=$rows['comments'];
$MM_Username=$rows['name'];
$dellink="<a href=\"delete.php?id=" . $id . "\">ИЗТРИЙ</a>";
echo '<b><p style="background-color:#6CC; border-radius:10px; te"
;border:1px solid;">   Потребител:</b> ' . $MM_Username . ' <br /><b> 
Тема:</b> ' . $title . '</b><br /><b>  Коментар:</b><br />  ' . $comment .
'<br />' . $dellink .'</p><br />' ;
}
?>
이 내 delete.php입니다 :
<?php
include 'Connections/localhost.php';
mysql_query("DELETE FROM comments WHERE id = $_GET[id]")or die(msql_error()) ;
header('location: komentari.php');
?>
글쎄, 처음에는 사용자가 댓글을 삭제할 수 있는지 여부를 확인하지 않아도됩니다. 따라서 모든 사용자는 모든 주석을 삭제할 수 있습니다. 'delete.php'는 요청을하는 사용자가 주석을 삭제할 수 있도록 권한 부여 검사를해야합니다. 또한, *** 매우 중요합니다 ***, 귀하의 코드는 SQL 주입 공격에 * 열려 있습니다 *. 사용자는 주석을 삭제할 수있을뿐 아니라 서버를 완전히 제어 할 수 있습니다. 이 내용을 읽으십시오 : http://www.php.net/manual/en/security.database.sql-injection.php – David
** 위험 ** : 귀하는 [** 구식 ** 데이터베이스 API] (http : //stackoverflow.com/q/12859942/19068) [현대 대체] (http://php.net/manual/en/mysqlinfo.api.choosing.php)를 사용해야합니다. 또한 현대의 API가 [방어] (http : // stackoverflow)를 쉽게 할 수 있도록 [SQL 주입 공격] (http://bobby-tables.com/)에 ** 취약합니다 **.com/questions/60174/best-way-to-prevent-sql-injection-in-php)을 사용하십시오. – Quentin
데이터베이스를 편집하는 작업에 링크를 사용하지 마십시오. 당신은 봇 (및 프록시 프록시)을 따르고 사물을 크게 삭제합니다. POST 양식을 사용하십시오. – Quentin