Système de vote en ASP classic

-
Bonjour,
Je réalise un système de vote (like, dislike) en ASP sur des questions / réponses des clients.
J'aimerais donner la possibilité de liker ou disliker une réponse. Mon système de vote je l'ai réalisé en php et ça marche très bien. Mais je n'arrive pas à le traduire en ASP. Je ne maîtrise pas tous les aspects de l'ASP mais je comprends les bases.
Je suis bloqué lors du clic sur le bouton like ou dislike et je ne comprends pas l'origine du problème.
Je vous montre le code ci-dessous pour quelqu'un puisse regarder et m'aider svp.
Merci par avance !

// Partie requête SQL
SQL="select reponse_id, "
SQL=SQL&"reponse_message, "
SQL=SQL&"reponse_date, "
SQL=SQL&"client_pseudo "
SQL=SQL&"FROM reponse "
SQL=SQL&"ORDER BY reponse_date DESC"
set rs=conn.execute(SQL)
if not rs.eof then
do while not rs.eof


// Partie HTML
<div class="vote" id="<%=rs("reponse_id")%>">
<div class="vote_btn">
<div class="btn_like"><img src=""quot;"quot;like.jpg" alt="like"></div><span class="votes_like">0</span>
</div>
<div class="vote_btn">
<div class="btn_dislike"><img src=""quot;"quot;dislike.jpg" alt="dislike"></div><span class="votes_dislike">0</span>
</div>
</div>


rs.movenext
loop
end if


// code js final
$(document).ready(function() {
$.each($('.vote'), function () {
var id = $(this).attr("id");
post_d = {'id': id, 'vote': 'fetch'};
$.post('vote.asp', post_d, function (response) {
$('#' + id + ' .votes_like').text(response.vote_like);
$('#' + id + ' .votes_dislike').text(response.vote_dislike);
}, 'json');
});
$(".vote .vote_btn").click(function (e) {
var click_button = $(this).children().attr('class');
var id = $(this).parent().attr("id");
if (click_button === 'btn_dislike') {
post_d = {'id': id, 'vote': 'dislike'};
$.post('vote.asp', post_d, function (data) {
var $votes = $('#' + id + ' .votes_dislike');
var num = parseInt($votes.text(), 10);
$votes.text(num + 1);
}).fail(function (err) {
alert(err.statusText);
});
} else if (click_button === 'btn_like') {
post_d = {'id': id, 'vote': 'like'};
$.post('vote.asp', post_d, function (data) {
var $votes = $('#' + id + ' .votes_like');
var num = parseInt($votes.text(), 10);
$votes.text(num + 1);
}).fail(function (err) {
alert(err.statusText);
});
}
});
});


// Partie vote.asp
if request.Form("vote")<>"" and request.Form("id")<>"" then
Dim vote_type
Dim reponse_id
vote_type = request.Form("vote")
reponse_id = request.Form("id")
if not isEmpty(Request.ServerVariables("HTTP_X_REQUESTED_WITH")) and Lcase(Request.ServerVariables("HTTP_X_REQUESTED_WITH")) = "xmlhttprequest" then
Response.End
end if
SQL="SELECT COUNT(*) AS nbr "
SQL=SQL&"FROM vote "
SQL=SQL&"WHERE "
SQL=SQL&"reponse_id = '"&reponse_id&"' "
set rs = conn.execute(SQL)
if not rs.eof then
select case vote_type
case "like"
if rs("nbr") >= 1 then
response.status="500 Vous pouvez voter qu'une seule fois !"
Response.End
else
if vote_type = "like" then
vote_like = 1
else
vote_like = 0
end if
SQL="INSERT INTO vote (vote_like, vote_dislike, reponse_id) VALUES ('"& vote_like &"', '"& vote_dislike &"', '"& reponse_id &"')"
conn.execute(SQL)
end if
case "dislike"
if rs("nbr") >= 1 then
response.status="500 Vous pouvez voter qu'une seule fois !"
Response.End
else
if vote_type = "dislike" then
vote_dislike = 1
else
vote_dislike = 0
end if
SQL="INSERT INTO vote (vote_like, vote_dislike, reponse_id) VALUES ('"& vote_like &"', '"& vote_dislike &"', '"& reponse_id &"')"
conn.execute(SQL)
end if
case "fetch"
SQL="SELECT "
SQL=SQL&"SUM (vote_like) as vote_like "
SQL=SQL&"SUM (vote_dislike) as vote_dislike "
SQL=SQL&"FROM vote "
SQL=SQL&"WHERE "
SQL=SQL&"reponse_id = '"&reponse_id&"' "
set rs1 = conn.execute(SQL)
if not rs1.eof then
if rs1("vote_like") then
vote_like = rs1("vote_like")
else
vote_like = 0
end if
if rs1("vote_dislike") then
vote_dislike = rs1("vote_dislike")
else
vote_dislike = 0
end if
dim env = array('vote_like'='vote_like', 'vote_dislike'='vote_dislike')
response.write json_encode(env)
end if
rs1.close
set rs1=nothing
end select
end if
rs.close
set rs=nothing
end if
Afficher la suite 

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.