2011-07-13 11 views
0

タイムスタンプ付きの小さなメンバーシップシステムを作成する際に、いくつか問題があります。タイムスタンプを日付に表示すると、有効なメンバーシップが失効したときに通知されます。しかし、その時間/日付では、期限切れではなく、メンバーシップをリセットし、-NUMBERHEREから数えます。PHPタイムスタンプ/メンバーシップシステムが正確な日付で期限切れにならない

私は何か間違っているとは思わない?私はそれを解決するために(time() - $timestamp)をやっています。ここに私のスクリプトがあります。

$membership = mysql_query("SELECT * FROM `members` WHERE `membership` > 0 AND `membertype` > 0") or die(mysql_error()); 
while($mm = mysql_fetch_array($membership)){ 

    if((time() - $mm["membership"]) > $mm["membertype"]){ 
    mysql_query("UPDATE `members` SET `membership` = 0, `membertype` = 0 WHERE `username` = '" . $mm[username] . "'"); 
    } else { 
    echo (time() - $mm["membership"]); 
    } 

} 

$membership_date = date("d-m-Y H:i:s", $user["membership"]); 
echo "Your membership expiry date: $membership_date"; 

非常に遅く期限切れです。どのような助けも素晴らしいでしょう、ありがとう。

P/S:membertype変数は、有効期限が切れるまでの秒数です。

+1

は、このラインにこれ​​に

if((time() - $mm["membership"]) > $mm["membertype"]){ 

を置き換えますか?あなたは例を挙げることができますか? –

+0

http://pastebin.com/XsJrsKv0 期限切れになる正確なタイムスタンプでファイルを更新するためにファイルを更新すると、-NUMBEROFSECONDSからも数えられるため、更新されません – Joshua

+0

$ mm ['membership'] 'が実際に含まれていることを知らずに診断されました。しかし、私は、その変数が最初に設定された時点で問題を調べる必要があることを念頭に置いています。 – eykanal

答えて

2

ユーザーの作成:次に

$membership = time() + $membertype; 

クエリを設定し、実行します。

ユーザーを取得する次の場合、正確に失敗した何

if(time() >= $user["membership"]) 
+0

私はそれを考えなかった、笑。私の脳は明らかに他の人とは違うと考えています。ありがとう、アンディ。 – Joshua

関連する問題