-2

私は論理的なハードルに遭遇しました!

6つのアクションがあるページがあります。アクションをクリックすると、単にtrueまたはfalseが返されます。

各アクションには独自の成功の可能性があり、true / falseは、ランダムに生成された数値がアクションの成功値よりも大きいか小さいかに基づいています。

チャンス値は次のようにデータベースに保存されます: 10-20-30-40-50-60

これらの値をexplodeを使用して呼び出し、implodeを使用して挿入します。

私が達成したいのは、アクションがクリックされてフォームが送信されるたびに、これらのチャンスの値を1つ増やす、1つ減らす、または同じ(最大65)に変更することです。

これは私が試みたものですが、役に立ちませんでした。

<?PHP

//CHANCE 0 (action 1)

if ($chance[0] = 0 ){ 
    $chance[0] = rand(0,1); 

    }elseif ($chance[0] = 1 ){
             $chance[0] = rand(1,2); 

    }elseif ($chance[0] >= 2 ){
             $chance[0] = $chance[0] + rand(-1,1) ; 

    }elseif ($chance[0] >= 65 ){
             $chance[0] = 65;
    }

//CHANCE 1 (action 2)

if ($chance[1] = 0 ){ 
    $chance[1] = rand(0,1); 

    }elseif ($chance[1] = 1 ){
             $chance[1] = rand(1,2); 

    }elseif ($chance[1] >= 2 ){
             $chance[1] = $chance[0] + rand(-1,1) ; 

    }elseif ($chance[1] >= 65 ){
             $chance[1] = 65;
    }

など。すべてのチャンス[0]からチャンス[5]まで

それから、

$chancearray = array($chance[0], $chance[1], $chance[2], $chance[3], $chance[4], $chance[5]);

$newchancearray = implode("-",$chancearray);

?>

そしてそれをデータベースに挿入します。

フォームを送信した後、チャンス値に-1、0、または1を追加するためのロジックを誰かが手伝ってくれますか?

現時点では、すべての値を2に変更していますか?

したがって、チャンスが10-20-30-40-50-60の場合、送信すると2-2-2-2-2-2になります。

ヘルプ?:(

4

2 に答える 2

1

IF で使用されるブール式で = を == に変更します。

それ以外の

if ($chance[1] = 0 ){ 

する必要があります

if ($chance[1] == 0 ){ 
于 2013-03-23T14:53:26.487 に答える
-1

「==」について知っていますか?

コードが間違っています

于 2013-03-23T14:46:21.050 に答える