2017-05-31 20 views
0

私はAJAX呼び出しで通知したい、それはデータベースの行の合計をチェックしてから、以前の量と比較します。PHP変数値を定義した後に保存する方法、値を空に戻さずに最後の値を保持する方法?

AJAXがphpファイルにアクセスする場合、最初に$old_dbが定義されているかどうかをチェックし、定義されていない場合はそれを定義します。

クエリをチェックし、値を$new_dbに保存すると、クエリはまだ実行されていないため、まだ準備されていない文が実行されます。私は、PHPファイルを実行するたびに、それが値を比較し、上行くだろうその後

.....

は、最終的にそれが今$old_db

if(!(isset($old_db)) && empty($old_db)){ 
$old_db = ""; 
} 

$sql = $con->query("SELECT * FROM produk"); 
$new_db = $sql->num_rows; 

if($new_db > $old_db){ 
    echo "ada"; 

    echo "<br>".$old_db; 
} 

$old_db= $new_db; 

問題$new_db値を代入します、私はすでに$old_dbという値を返していませんが、スクリプトの一番下に値を割り当てていますが、

私はスクリプトを実行するたびにval ueは""またはnullに再度割り当てられましたか?どのように私はそれを防止し、最後の価値を維持するのですか?

私はクッキーにそれを保存することを考えている....

それについて考えた後、私はその後、セッションが十分にある使用して通知としてそれを使用したい場合。ありがとうございます

+0

はい、クッキーまたはセッション – Thamilan

+0

は、クッキーまたはセッションのどちらかを使用しますか?他の選択肢はありませんか? – Citra45Abadi

+0

HTTPはステートレスプロトコルです。 PHPスクリプトは、要求ごとにメモリから読み込まれ、実行され、削除されます。 2つのリクエストの間で情報を保持し、同じブラウザによって提出されたものとしてそれらをリンクできるようにするには、Cookieまたはセッションを使用できます(複数の情報の場合)。バックグラウンドでは、セッションはセッションIDを含むCookieを使用します。 – axiac

答えて

2
session_start(); 
$_SESSION['old_db'] = $old_db; 
if(!(isset($_SESSION['old_db']) && empty($_SESSION['old_db'])){ 
$_SESSION['old_db'] = ""; 
} 

$sql = $con->query("SELECT * FROM produk"); 
$new_db = $sql->num_rows; 

if($new_db > $_SESSION['old_db']){ 
    echo "ada"; 

    echo "<br>".$_SESSION['old_db']; 
} 

$_SESSION['old_db']= $new_db; 
+0

ありがとうございます。私は、私が知らない別のオプションがあるのだろうかと思っていましたが、唯一の方法がクッキーまたはセッションを使用することであれば、それを使用します – Citra45Abadi

関連する問題