2011-10-25 3 views
0

데이터베이스에서 html 형식으로 변수 (price)를 입력했습니다. 그런 다음 사용자가 가격을 변경하고 양식을 제출하면 변수가 데이터베이스에서 업데이트됩니다. 이전 값 (마지막 상태 및 양식에 표시)을 유지하려고하지만 양식 변수를 업데이트하면 업데이트가 유지됩니다.변수의 과거 값 유지

변수의 이전 값 (예 : 배열)을 기억하는 가장 좋은 방법은 무엇입니까?

+0

이전 값을 얼마나 오래 기억하고 싶습니까? – Crontab

+0

사용자는 괜찮을 때까지 가격을 변경할 수 있습니다. 그는 초기 금액을 확인해야합니다. 하나의 열을 초기 가격으로 만들어서 그대로 유지할 수 있습니다. 아직도 마지막 값을 표시 할 수 있습니까? – phpJs

답변

0

실제 데이터베이스에서이 데이터를 업데이트하는 경우 이전 행의 값을 보유하는 병렬 테이블을 만들어야합니다. 당신은 단지 배열을 업데이트하는 경우

그렇지 않으면, 방금 전에 배열을 업데이트하기 복사본을 만들 수 있습니다 http://codepad.org/SvlasJ7f

<?php 

    $array = array('Old Value'); 
    $lastarray = ''; 

    updateArray($array,'New Value'); 

    function updateArray(&$a,$v) { 
     $GLOBALS[lastarray] = $a; 
     $a = array($v); 
    } 
?> 
+0

실제 열 옆에 평행 열을 만들었습니다. 배열을 만들 때마다 배열의 시작 부분 (또는 끝 부분)에 새로운 값 (키 - 값)을 입력하려고 할 것입니다. – phpJs

0

마지막 값을 유지하고 화면에 표시하려면, 두 가지를 결합하십시오! 양식의 readonlyinput 필드에 이전 값만 표시하십시오. 그렇게하면 양식을 제출할 때마다 이전 값을 유지하게됩니다.

<form action="process.php" method="POST"> 
    <input type="text" name="Current" value="..."> 
    <input type="text" name="Last" value="..." readonly="readonly"> 
</form> 

아니면 뭔가 빠졌습니까?

+0

하지만 데이터베이스에서 변수의 값을 얻습니다. 그래서 폼에서 업데이트하면 db와 결과적으로 html로 업데이트됩니다. 하지만 내가 한 솔루션은 두 개의 열 (정적 및 변경)을 만들어 정적 열에서 원본 값을 얻는 것입니다. 어쨌든 - 나는 changin 값의 배열을 만들고 싶었어. 그래서 모든 변화가 기억된다. 나는이 문제에 대해 생각 해왔다. :) – phpJs

+0

사용자가 DB를 변경할 때마다 DB에 그것을 업데이트하고 싶습니까? 왜 그들이 완료되었을 때뿐만 아니라? 당신은 코멘트에서 "그가 그것을 좋아할 때까지 사용자는 가격을 바꿀 수있다"고 말했다. OK 일 때만 값을 저장하십시오. 그러면 DB에 많은 쿼리가 저장됩니다. –

+0

버튼을 누를 때마다 버튼이 눌러져 데이터베이스에 기록됩니다. 그들이 그걸로 괜찮 으면 그들은 변화가 없습니다. 시스템은 그들이 완료되었을 때를 알지 못한다. - 또는 매번 괜찮을 것이다. 나는 그것에 대해 더 노력해야 할 것이다. – phpJs