Php nemjó kommentet töröl
2013-11-23T14:59:49+01:00
2013-11-23T16:22:18+01:00
2022-08-17T16:25:33+02:00
geforce9600
Sziasztok

Az alábbi kód ugyan törli a hozzászólásokat, de nem azt amelyiknél rámentem a törlésre.

Az alábbi kód kirakja a kommenteket, és figyeli, hogy a belépett user és a komment írója egyezik e. Ha igen, akkor kijön a törlés gomb. Valaki lenne szíves megnézni? Köszönöm előre is.

while($komment = mysqli_fetch_assoc($getComments)) { echo '<div class="komment" id="komment_box_'.$komment['komment_id'].'">'; if($komment['thumb'] != "") { echo '<a href="profil?user='.$komment['user'].'" title="">'; echo '<img class="no_image" src="images/user/'.$komment['thumb'].'" width="40" height="40" alt="" />'; echo '</a>'; } else { echo '<a href="profil?user='.$komment['user'].'" title="">'; echo '<img class="no_image" src="images/no_image.gif" width="40" height="40" alt="" />'; echo '</a>'; } echo '<h4 class="comment_user"><a href="profil?user='.$komment['user'].'" title="">'.$komment['vezeteknev'].' ' .$komment['keresztnev'].'</a></h4>'; echo '<h6 class="comment_date">'.substr($komment['mikor'],0,-3).'</h6>'; if(isset($_SESSION['user_logged_in']) and $_SESSION['user_logged_in']['id'] == $komment['user']) { echo ' <ul class="options_div"> <li><a href="#" class="btn"><img src="images/options.png" witdh="25" height="17" /></a> <ul> <li><a href="#">Hozzászólás szerkesztése</a></li> <li><a href="#">Még valami lesz itt</a></li> <li><a class="delete_komment" id="'.$komment['komment_id'].'" href="#">Hozzászólás törlése</a></li> </ul> </li> </ul> '; } echo '<p>'.nl2br($komment['hozzaszolas']).'</p>'; echo '</div>'; } echo '</div>'; }

$('.delete_komment').click(function(e) { e.preventDefault(); var kommentID = $('.delete_komment').attr('id'); if(kommentID != "") { if(confirm("Biztos, hogy törölni szeretné a hozzászólását?")) { $.ajax ({ url: 'files/delete_comment.php', data: { komment_id:kommentID }, cache: false, type: 'POST', success: function(data) { $('#komment_box_'+kommentID).remove(); } }); } } });

A feldolgozó php:

<?php session_start(); include("connect.php"); $kommentID = intval($_POST['komment_id']); $check = mysqli_query($kapcs, "SELECT komment_id,user FROM dog_komment WHERE komment_id='$kommentID' LIMIT 1") or die(mysqli_error($kapcs)); if(mysqli_num_rows($check) > 0 ) { $data = mysqli_fetch_assoc($check); if($_SESSION['user_logged_in']['id'] == $data['user']) { mysqli_query($kapcs, "DELETE FROM dog_komment WHERE komment_id='$kommentID'") or die(mysqli_error($kapcs)); } } ?>
Mutasd a teljes hozzászólást!
var kommentID = $('.delete_komment').attr('id');

helyett inkább:
var kommentID = $(this).attr('id');

az előzővel az összes delete_comment classú elemet elkéred és abból az elsőnek veszed az id-ját
Mutasd a teljes hozzászólást!

abcd