hallo,
ich bräuchte mal wieder euren Rat, da ich nicht weiterkomme.
Ich hab nen Button, der alle Kommentare anzeigen soll. Sollte man den Button wieder drücken zeigt er die Kommentare an + 5 weitere.
Das Problem ist hierbei, sollte ich z.b auf Beitrag 1 3x den Button klicken zeigt er mir 15 Beiträge an. Soll ja auch so sein. Wenn ich jetzt runterscrolle und auf einen anderen Beitrag klicke, werden wieder 15 Kommentare angezeigt, obwohl standardgemäß 5 "limitert" ist."
Ich weiß auch denke ich mal worans liegt, aber ich finde keine möglichkeit CommentsCount eindeutig zu machen.
$(document).ready(function() {
var commentsCount = 0;
$('.comment-form').submit(function(e) {
e.preventDefault()
var btn = $(this).find('.show_comments')
var value = btn.val()
commentsCount = commentsCount + 5
$.ajax({
type: 'POST',
url: 'show_comments.php',
data: {newid: value, newcommentscount: commentsCount},
success: function(data) {
$('.comment-list-'+value+'').css('display', 'block')
$('.btn-con-'+value+'').css('display', 'block')
$('.comment-list-'+value+'').html(data)
}
})
})
})
<div class="btn-con-<?= $rowsafe['beichtid']; ?> btn-con zoom">
<form class="comment-form">
<button type="submit" class="show_comments top-margin" value="<?php echo $rowsafe['beichtid']; ?>">Weitere Kommentare anzeigen</button>
</form>
</div>
SQL:
$t_id = filter_var($_POST['newid'], FILTER_SANITIZE_NUMBER_INT);
$commentsCount = filter_var($_POST['newcommentscount'], FILTER_SANITIZE_NUMBER_INT);
if(!is_numeric($commentsCount)) {
exit("nicht nummeriert");
}
$stmt = $pdo->prepare("SELECT * FROM comments
WHERE `comments`.`topic_id` = :t_id LIMIT $commentsCount;");
$stmt->BindParam(':t_id', $t_id);
if(!$stmt->execute()) {
print_r($stmt->errorInfo());
}
while($row = $stmt->fetch()): ?>
<?php echo $row['comment']; ?>
<?php endwhile; ?>