jquery, php 및 mysql을 사용하여 자선 카운터를 만들려고합니다. 'window.setInterval()'을 사용하여 페이지를 업데이트하지 않고 5 초마다 PHP를 사용하여 mysql에서 새 값을 가져 오려고하지만 내 문제는 새로운 값을 가져 오는 것이 아니라 처음 값을 계속 사용한다는 것입니다. 그래서 여기에 코드가 있습니다, 나는 어떤 도움이되기를 바랍니다 :).mysql 및 PHP를 사용하여 jquery 변수를 업데이트하려고 시도했습니다.
window.setInterval(function(){
var needed = <?php echo neededGetFirst(); ?>;
var got = <?php echo gotGetFirst(); ?>;
console.log('needed: ' + needed);
console.log('got: ' + got);
var gaugeHeight = 223;
var gaugeBottom = 318;
var percent = (100/needed) * got;
var heightOffset = (gaugeHeight/100) * percent;
var bottomOffset = gaugeBottom - (gaugeHeight - heightOffset);
$('#gauge').animate({
height: heightOffset + 'px',
bottom: bottomOffset + 'px'
}, 1000);
for (var i = 2, limit = 7; i < limit; i++) {
var value = (needed/5) * (i - 1);
$('#stamp' + i).text(value);
};
}, 5000);
편집
그것은 GET/RUN
의 몇 가지 유형의 파일에서 값을 반환 할 수 있습니까? php/mysql 데이터베이스 함수를 파일에 넣고 값으로 return
을 사용하십시오. '
는 EDIT 2
파일에 사용되는 PHP 코드 :
언급 한 바와 같이<?php
$pdo = new PDO('mysql:host=127.0.0.1;dbname=thermometer', 'root', '');
$sql = 'SELECT `got`.`value` AS got, `needed`.`value` AS needed FROM `needed`, `got`';
$statement = $pdo->prepare($sql);
$statement->execute();
$result = $statement->fetchAll(PDO::FETCH_ASSOC);
$json = json_encode($result);
echo($json);
?>
window.setInterval에서 서버 측 값 (Votes got)에 액세스하려면 AJAX를 사용해야합니다. 현재 코드는 페이지로드시 "획득 한"값을 반향시키기 때문에 시작 부분에있는 값을 사용합니다.이 값을 새로 고치는 코드는 없습니다. – Ananth