JQuery में अजाक्स इस तरह काम करता है:
var myData=1;
$.ajax({
type:'POST',//type of ajax
url:'mypage.php',//where the request is going
data:myData,//the variable you want to send
beforeSend:function(xhr){//as a standard, I add this to validate stuff
if(someThingWrong===true)xhr.abort//aborts xhttpRequest
},
success:function(result){
//result is your result from the xhttpRequest.
}
});
यह आपके पेज को रीफ्रेश नहीं करेगा बल्कि निर्दिष्ट यूआरएल पर 'पोस्ट' भेजेगा। अपने निर्दिष्ट पृष्ठ पर आप वह करना चाहते हैं जो आप करना चाहते हैं और कहें कि परिणाम लौटाएं। मेरे उदाहरण में मैं कुछ आसान करूँगा:
if($_POST['myData']===1)return True;
यह jQuery का उपयोग करके AJAX अनुरोध की मूल बातें है।
संपादन करना!
एक AJAX स्क्रिप्ट शुरू करना:मुझे केवल अनुमान है क्योंकि मैं आपके तत्वों को आपके HTML के भीतर नहीं जानता और न ही आपकी स्क्रिप्ट को कभी भी! तो आपको समायोजन करना होगा!
$('button.dislike').click(function(){
$.ajax({
type:'POST',
url:'disliked.php',
data:{dislike:$(this).attr('id')},
success:function(result){
$(this).prev('span').append(result);
}
});
});
PHP:MySQL का उपयोग न करें, अब इसका मूल्यह्रास हो गया है और इसे खराब अभ्यास माना जाता है, मुझे यह भी नहीं पता कि क्वेरी पर sprintf का उपयोग क्यों कर रहे हैं? :एस
$DBH=new mysqli('location','username','password','database');
$get=$DBH->prepare("SELECT dislike FROM random WHERE ids=?");
$get->bind_param('i',$_POST['dislike']);
$get->execute();
$get->bind_result($count);
$get->close();
$update=$DBH->prepare('UPDATE random SET dislike=? WHERE ids=?');
$update->bind_param('ii',++$count,$_POST['dislike']);//if you get an error here, reverse the operator to $count++.
$update->execute();
$update->close();
return String $count++;
यह तभी काम करेगा जब आपके एचटीएमएल में आपके डेटाबेस में आईडी से मेल खाने वाले बटनों की एक श्रृंखला होगी। तो
$get=$DBH->prepare('SELECT ids FROM random');
$get->execute();
$get->bind_result($ids);
while($get->fetch()){
echo"<button class='dislike' id='".$ids."'>Dislike this?</button>";
}
आशा है कि आपको इस बात का सामान्य विचार मिल गया होगा कि मैं आपके नापसंद बटन सिस्टम XD lol को कैसे प्रबंधित कर रहा हूँ