因此,我正在製作一個類似於FML和其他網站的網站,人們可以在網站上發佈內容,其他人可以喜歡/不喜歡和評論。如何通過Javascript更新數據庫,然後重新加載
現在,我擁有它,當somoene點擊「like」時,它是一個調用「/ like /(post id)」的鏈接,它調用增加數據庫的函數,然後重新加載頁面。
我想找到一種方法來做到這一點,而不必這樣做。一位朋友說要嘗試Ajax或JavaScript,但我完全沒有受過教育。
有沒有人有任何指針?
因此,我正在製作一個類似於FML和其他網站的網站,人們可以在網站上發佈內容,其他人可以喜歡/不喜歡和評論。如何通過Javascript更新數據庫,然後重新加載
現在,我擁有它,當somoene點擊「like」時,它是一個調用「/ like /(post id)」的鏈接,它調用增加數據庫的函數,然後重新加載頁面。
我想找到一種方法來做到這一點,而不必這樣做。一位朋友說要嘗試Ajax或JavaScript,但我完全沒有受過教育。
有沒有人有任何指針?
我不想全面解釋AJAX請求,但這應該指向正確的方向。 而不是重新加載頁面,有/喜歡/返回喜歡的數量。 然後有一個可選元素的數量,像
<a id="postid" href="#" onclick="like(this);return false;" class="likebtn">Like</a>
<span id="postid-likes">0</span>
然後讓javascript函數
<script>
function like(element) {
xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById(element.id+"-likes").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","/like/"+element.id,true);
xmlhttp.send();
}
</script>
-1用於推薦內嵌JavaScript,並且您沒有發送任何數據或標識符作爲喜歡的項目。 – Raynos
Raynos也許你的時間會花在寫正確的答案上會更好嗎? –
這個函數可以放在你的一個javascript文件中,這是作爲如何提出請求的一個例子,而不是放置你的javascript代碼的地方。而「postid」是爲PHP創建的每個項目提供的唯一標識符。哦,是的,網址應該是/ like/postid然後。 –
我會建議使用Ajax的PHP文件,但你需要看到一些這方面的教程... – ajax333221
你也應該注意到,當使用PHP時,你可以通過url傳遞變量,所以你應該使用myPHPfile.php?action = like&postid =(post id ) – GAgnew