2016-10-09 3 views
1

자동 새로 고침을 사용하지 않으면 코드 아래의 과 함께 자동 새로 고침을 사용할 때 마지막 행의 값만 반환하는 mysqli 쿼리가 있습니다. 다음 그것은 잘 작동합니다. 자동 새로 고침을 사용할 때만 직면하는 문제입니다.php mysql은 자동 새로 고침을 사용할 때 마지막 행만 반환합니다.

$(document).ready(function(){ 
    refreshTable(); 
}); 

function refreshTable(){ 
    $('.tableHolder').load('itemtotal_cart_checkout.php', function(){ 
     setTimeout(refreshTable, 1000); 
    }); 
} 

어떻게 해결할 수 있습니까?

$ses_mem = $_SESSION['ses_user_id']; 
$getItem = $_GET['item_id']; 

$order_temp = "select * from temp_cart where item_id='".$getItem."' AND ses_mem='".$ses_mem."' order by id"; 
$tordera = $db->query($order_temp); 
$torder = $tordera -> fetch_assoc(); 

답변

1

귀하의 PHP 코드는 item_id GET 매개 변수를 필요로합니다. 그래서 당신은 자바 스크립트에서 통과해야합니다 자바 스크립트의 현재 쿼리 문자열에서 item_id을 얻을 수있는 방법

다음
$('.tableHolder').load('itemtotal_cart_checkout.php?item_id=' + itemId, 
    function(){ 
    setTimeout(refreshTable, 1000); 
    }); 

가있다 :

var m = location.search.match(/^.*[\?&]item_id\=(\d+)/); 
var itemId = m && m.length >= 2 ? m[1] : 0; 

경우에는, 그러나, 현재 페이지는 PHP와 HTML의 혼합물이다 자바 스크립트는 위에서 언급과 함께, 그럼 그냥 자바 스크립트로 PHP를 포함 : 자바 스크립트가 별도의 파일에서 실행되는 경우

<script> 
/* skipped original code */ 
$('.tableHolder').load('itemtotal_cart_checkout.php?item_id=' + <?php 
    echo isset($_GET['item_id']) ? (int) $_GET['item_id'] : 0; 
?>, 
    function(){ 
    setTimeout(refreshTable, 1000); 
    }); 
/* skipped original code */ 
</script> 

마지막으로, 당신은 자바 스크립트 기능이 필요합니다 아이템 ID의 인수 예를 들어, 일부 script.js에서 당신은 유사한 기능을 가질 수 다음

<script> 
$(document).ready(function(){ 
    refreshTable(<?php echo isset($_GET['item_id']) ? (int) $_GET['item_id'] : 0; ?>); 
}); 
</script> 

당신은 setInterval을 사용할 수 있습니다 :

다음
function refreshTable(itemId) { 
    $('.tableHolder').load('itemtotal_cart_checkout.php?item_id=' + itemId, function() { 
     setTimeout(function() { refreshTable(itemId) }, 1000); 
    }); 
} 

당신이 PHP에서 이런 식으로 호출 할 수 있습니다 그런데 setTimeout에 대한 재귀 호출 대신.

+0

내가 자바 스크립트에서 ITEM_ID을 만들고 싶어'ITEM_ID = '** itemtotal_cart_checkout.php ** –

+0

@FahadAlmehaini에서 가져온 다음, JavaScript 코드에'$ _GET [ 'item_id']'를 전달해야합니다. JavaScript 코드가 PHP 스크립트에 포함되어있는 경우 (현재 페이지가 PHP, HTML 및 JavaScript의 혼합 인 경우) 'load ('itemtotal_cart_checkout.php? item_id = '+ ... ' –

+0

코드에 따라 코드를 조정할 수 있습니까? –

0

패스 item_id 변수가이 코드에 의해 PHP로 :?

$(document).ready(function(){ 
    refreshTable(); 
}); 

function refreshTable(){ 
    $('.tableHolder').load('itemtotal_cart_checkout.php<?php echo '?item_id=1'; ?>', function(){ 
     setTimeout(refreshTable, 1000); 
    }); 
} 
관련 문제