2017-03-31 1 views
0

JS 및 PHP 프로그래밍에 완전히 익숙합니다. 버튼을 비활성화한다 checkin 버튼을 클릭같은 페이지에서 javascript에서 PHP로 변수 가져 오기

<?php 

echo' 
<button id="checkin" onclick="myFunction()">CheckIn</button>   
<script> 
function myFunction() { 
document.getElementById("checkin").disabled = true; 
var CheckinoutStatus=true; 
     $(function(){ 
     $.ajax({ 
       type: "POST", 
       url: "functions.php", 
       data: "&CheckinoutStatus="+CheckinoutStatus, 
       success: function(data) 
       { 
       alert("Checked In"); 
       } 
      }); 
     }); 
    } 
</script> 
'; 
if(isset($_POST['CheckinoutStatus'])) 
{ 

    $CheckinoutStatus=isset($_POST['CheckinoutStatus']); 
    $update = $db->query("UPDATE Details SET  CheckinoutStatus='$CheckinoutStatus' where date='$date' "); 

} 
?> 

.. 다음 코드를 도와 Ajax 호출을 사용하여 데이터베이스에 진실의 CheckinoutStatus 변수 값을 전송 한 다음,이 후 경고 '체크인'보여주십시오 데이터베이스가 갱신되었습니다.

나는 정의하고 변수 CheckinoutStatus에서 사실 에 JS를 설정하고 AJAX를 사용하여 는 기존 테이블에서 해당 PHP에서 값 및 업데이트 데이터를 얻기 위해 노력하고 있어요. js에서 php로 값을 전달할 수 없었습니다.

+0

가능한 복제 [자바 스크립트의 변수를 전달하는 방법 PHP?] (http://stackoverflow.com/questions/1917576/how-to-pass-javascript-variables-to-php) –

+1

PHP에서 URL 쿼리를 구문 분석해야합니다. (즉, 귀하의 서버에서 아약스 게시물을 들으십시오) 특히 아약스가 체크 아웃 상태로 데이터를 보내고 있기 때문에 –

+0

아약스에서 CheckinoutStatus를 반환 할 때 나는 실제 결과를 얻고 있습니다 .. PHP에서 변수를 사용할 때 정의되지 않은 값을 사용하고 있습니다. 변수 오류 – Sindhu

답변

0

테이블에 레코드가 하나만있는 경우가 아니면 정확한 레코드를 업데이트 할 수 있도록 일종의 키를 전달해야합니다. 아래의 줄을 살펴보면, 폼에 "key"라는 ID가있는 숨겨진 필드가 있다고 가정합니다.

변경 라인 :

data: "&CheckinoutStatus="+CheckinoutStatus, 

사람 :

data: "&CheckinoutStatus=1&key="+$('#key').val(), 

그런 다음 $ _GET을 확인하는 PHP 파일 이름 functions.php를 만들려면 값 [ 'CheckinoutStatus']를 선택하고 저장하여

UPDATE `mystatustable` 
SET `checkinoutstatus` = $_GET['key'] 
WHERE `id` = $_GET['key']; 
+0

숨겨진 ID를 사용하고 있지 않습니다 .. 사용해야합니까 .. ?? JS에서 변수를 가져 와서 데이터베이스 테이블을 업데이트하기 위해 PHP에 전달 중 ... 숨겨진 필드에 대한 조사가 필요하다고 생각합니다. – Sindhu

+0

업데이트 할 데이터베이스의 레코드를 어떻게 알 수 있습니까? –

+0

CheckinoutStatus 및 날짜 필드가있는 데이터베이스에 테이블이 있습니다. 특정 날짜를 클릭하면 해당 날짜에 CheckinoutStatus가 업데이트됩니다. – Sindhu

0

UPDATE : 나는 실제로 테이블 where 절과 비슷하게으로 업데이트를 사용 링크를 통해 값을 전달하면 제대로 작동합니다.

window.location.href = "exp1.php? w1 ="+ CheckinoutStatus + "& w2 ="+ date;

하지만 난 .. 같은 PHP 파일을 사용하여 .. 나는 그것이 작동하려면 중위 새로운 PHP 파일 exp1.php을 만들 필요가 그렇게 할 수없는 수의

관련 문제