2016-12-19 4 views
2

나는이 질문이 여러 가지 형태로 여러 번 제기되었다는 것을 알고있다. 참고로, 나는 이것을 5 시간 이상 풀기 위해 노력해왔다. 나를 미치게했다. 전체 프로그래밍 씬에 익숙해 져 있으므로 나와 함께 맨발로 가보십시오.MySQL/PHP/Ajax - +1로 클릭시 MySQL 값 증가시키기

내가이 같은

URL이 무엇 : ABC이라는 키 많은 행 http://localhost:8888/website/?key=ABC

MySQL의 테이블 하나를. 사용자가 key=ABC에 해당하는 MySQL 행을 클릭 (upvote)하기를 원하는 버튼이 있습니다. 내 scripts.js에서

<a href="" onclick="increment()"></a> 

나는이 (불완전?) Ajax 코드가 있습니다

<?php 
    if (isset($_GET['key']) { 
     $rowKEYtest = $_GET['key']; 
     $sql2 = "UPDATE database SET Score = Score + 1 WHERE UniqueKey = '$rowKEYtest'"; 
     $conn->query($sql2); 
    } else { 
     echo "lol"; 
    } 
?> 

그건 :은 다음과 같습니다

function increment() { 
    $.ajax({ 
     type: 'POST', 
     url: '../js/ajax.php', 
     success: function(data) { 
      alert("function saved: " + data); 
     } 
    }); 
} 

그리고 내 ajax.php을 업데이트하지 않습니다 .. 어떻게 해야할지 잘 모릅니다.

시간 내 주셔서 감사합니다.

답변

3

코드에 표기 해주십시오. 2 가지 실수가 있습니다.

1. In your ajax call you are using type: 'POST', you should use GET. 
2. You are nor parsing your 'key' param in ajax call. 

실제로 아약스에서는 POST 메서드를 사용하지만 GET 메서드로 값을 가져 오려고 시도하는 ajax.php에서는 사용하고 있습니다. 두 번째로 아약스 호출에서 매개 변수를 전달하지 않습니다.

희망이 도움이 될 것입니다. 답장을

+1

덕분에, 나는 그것을 해결할 수 있지만 .. 지금은이 코드가 있습니다. '$는 ("# 투표 업-q는"() 함수() { \t \t $ 아약스를 클릭 ({ \t \t \t 유형 : 'GET', \t \t \t URL : '../js/ajax.php', \t \t \t 데이터 : {조치 : '키'}, \t \t \t 성공 : 기능 (데이터) { \t \t \t \t 알림 ("function saved :"+ 데이터); \t \t \t} \t \t}); \t});' – JuliusSecret