2016-10-20 16 views
0

ボタンをクリックするたびに$クリックの値を1増加させるようにしていますが、動作させることができません。どの入力?ボタンクリックで値を1つ増やす

<form action="" method="post"> 
<input type="submit" name="click_button" value="Click.."> 
</form> 
<?php 
$clicks = 0; 
echo $clicks; 

if (isset($_POST['click_button'])) { 
    $clicks = $clicks + (1); 
} 
+0

POSTを正しく使用していません。 PHPを別のページにPOSTする必要があります。 –

+1

'$ clicks'は常に' 0'です。あなたの割り当てに従って、 '$ clicks = 0;'。使用セッションを保存するには、すべてのユーザーにグローバルであると思われますか? – chris85

+1

@EliSadoff「POST」が正しく使用されていますが、処理ロジックだけが正しくありません。これは/それがあるページに提出するでしょう – chris85

答えて

3

これは、ページが読み込まれるとすぐにクリックが消えるためです。 $ _SESSIONスーパーグローバルに$クリックを格納する必要があります。次に、ページがリロードされるたびに$クリックの値が消えません。

<form action="" method="post"> 
<input type="submit" name="click_button" value="Click.."> 
</form> 
<?php 
session_start(); 

if (isset($_POST['click_button'])) { 
    $_SESSION['clicks'] += 1 ; 
} else { 
    $_SESSION['clicks'] = 0; 
} 

echo($_SESSION['clicks']); 

注:スクリプトの冒頭にsession_start();を含めることを忘れないでください。それ以外の場合、スクリプトは$ _SESSIONにアクセスできません

関連する問題