我用jQuery,html和php爲我的頁面創建了一個像按鈕。現在我試圖讀出喜歡的總數。用jquery更新喜歡的總數
當我點擊它通過我的jQuery和PHP並返回總量在我的控制檯。但是在我更新頁面之前,我無法在頁面上看到它。
PHP和HTML
<?php
$page = new CMS();
$gp = $page->getPage();
foreach ($gp as $sp) {
//var_dump($sp);
echo "<div class='pub'>";
echo "<h4 class='pub-headline'>" . $sp['title'] . "</h4>";
echo "<article class='pub_art'>" . $sp['content'] . "</article>";
echo "<p class='pub_created'>" . $sp['created'] . "</p>";
echo "<p class='pub_created_by'>". $sp['writer'] ."</p>";
echo "<button class='show'>Show</button>";
echo "<button class='noshow'>Hide</button>";
echo "<div class='vote_widget'>";
echo "<div class='voting' onclick='vote(" . $sp['id'] . ", 1)'></div>";
echo"<div class='total_likes'>" . $sp['likes'] . "</div>";
echo"</div>";
echo "</div>";
}
?>
jQuery的
function vote(id, likes) {
$.post("classCalling4.php",
{ id: id, likes: likes }, function(result){
console.log(result)
$(".total_likes" + id) .html(result);
;
});
OOP PHP
public function updateLikes($id, $likes) {
$id = mysqli_real_escape_string($this->db, $id);
$likes = mysqli_real_escape_string($this->db, $likes);
$id = intval($id);
$likes = intval($likes);
$sql = "UPDATE pages
SET likes = likes+1
WHERE id = $id ";
$result = mysqli_query($this->db, $sql) or die("Fel vid SQL query 1"); // Hit kommer jag
$sql2 = "SELECT * from pages WHERE id = $id ";
$result2 = mysqli_query($this->db, $sql2) or die ("Fel vid SQL query 2");
$row = mysqli_fetch_array($result2);
$tot_likes = $row['likes'];
echo $tot_likes;
}
的確!或者從jquery中刪除「+ id」,如果你只是希望這個類是total_likes –
@MatthewLymer我認爲你的解決方案是無效的,因爲他有很多div總數,它在foreach中 –
Thanks dude!工作了很多 – mackeemackee