Salve!
come da titolo, grazie a una guida, ho costruito un pulsante "like", che ovviamente comunica con una tabella in un db.
ecco il codice:
il pulsante funziona e incrementa i like dentro la tabella...solo che per vedere incrementare il numero di like che stanno dentro il pulsante devo ricaricare la pagina.
qualcuno sa dirmi come fargli fare l'incremento in real time?
come da titolo, grazie a una guida, ho costruito un pulsante "like", che ovviamente comunica con una tabella in un db.
ecco il codice:
PHP:
<script>//database connction
function doAction(postid, type) {
$.post('doAjax.php', {postid:postid, type:type}, function(data){
if(isNaN(parseFloat(data))){
alert(data);
}else{
$('#'+postid+'_'+type+'s').text(data);
}
});
}
</script>
/////////////////////questo è il pulsante:
<a class='muted' href=\"java-script:;\" onclick=\"doAction('$postid','like');\"><button class='btn'> <span id='$postid'>$data->like</span></button></a>
///////////////e questo è il file doAjax.php
<?php
include ('db.php');
if($_POST['postid'] != '' && $_POST['type'] != ''){
$alreadyExist = mysql_num_rows(mysql_query(' SELECT id FROM voted WHERE postid="'.(int)$_POST['postid'].'" AND ip="'.$_SERVER['REMOTE_ADDR'].'"'));
if($alreadyExist==0){ //oopsm mybad
if($_POST['type']=='like'){
mysql_query(' UPDATE posts SET `like`=`like`+1 WHERE id="'.(int)$_POST['postid'].'"');
$num = mysql_fetch_row(mysql_query(' SELECT `like` FROM posts WHERE id="'.(int)$_POST['postid'].'" LIMIT 1'));
}
echo $num[0];
mysql_query(' INSERT INTO voted (`postid`, `ip`) VALUES ("'.(int)$_POST['postid'].'","'.$_SERVER['REMOTE_ADDR'].'")');
}else{
echo "You already voted this.";
}
}
?>
il pulsante funziona e incrementa i like dentro la tabella...solo che per vedere incrementare il numero di like che stanno dentro il pulsante devo ricaricare la pagina.
qualcuno sa dirmi come fargli fare l'incremento in real time?
Ultima modifica di un moderatore: