2012-11-03 268 views
1

我希望每次按下提交按鈕時,變量$order都會增加1。每次按下按鈕(PHP)時增加一個變量

(頁面的名稱是study.php所以按下按鈕的頁面被刷新每次):

<?php 
$order = $_GET['number']; 

echo "<form action='study.php' method='GET'> 
    <input type='hidden' name='number' value='$order++' /> 
    <input class='big_b' type='submit' value='next' /> 
</form>"; 

echo "$order"; 
?> 

第一次1推按鈕$順序是1,第二個2,第三個是3 ...等

感謝您的幫助!

編輯:解決

<?php 
session_start(); 
if(empty($_SESSION['count'])) $_SESSION['count'] = 0; 
$order = $_SESSION['count']+1; 
$_SESSION['count'] = $order; 

echo "<form action='study.php' method='GET'> 
     <input class='big_b' type='submit' value='next' /> 
    </form>"; 

echo "$order"; 
?> 
+1

使用PHP會話! – Vucko

+0

感謝Vucko的提示! –

回答

0
<?php 
session_start(); 
if(empty($_SESSION['order'])){ 

    $_SESSION['order'] = 1; 
} 


echo "<form action='study.php' method='GET'> 
    <input type='hidden' name='number' value='".$_SESSION['order']++."' /> 
    <input class='big_b' type='submit' value='next' /> 
</form>"; 

echo $_SESSION['order']; 

?> 
0

你需要把$order++外引號,使(遞增1)的操作。下面的代碼:

<?php 
$order = $_GET['number']; 

echo "<form action='study.php' method='GET'> 
    <input type='hidden' name='number' value='".$order++."' /> 
    <input class='big_b' type='submit' value='next' /> 
</form>"; 

echo "$order"; 
?> 
+0

謝謝,但不工作。 –

+0

您需要存儲值客戶端或服務器端,然後增加它 – thumbmunkeys

1

如何你現在擁有它,就是它會增加每個頁面的刷新按鈕,無論是否被點擊或沒有,你需要它只有當按下按鈕來增加?

<?php 
session_start(); 

// Reset to 1 
if(isset($_POST['reset'])){unset($_SESSION['number']);} 

// Set or increment session number only if button is clicked. 
if(empty($_SESSION['number'])){ 
    $_SESSION['number']=1; 
}elseif(isset($_POST['next'])){ 
    $_SESSION['number']++; 
} 

echo ' 
<form action="" method="POST"> 
    <input class="big_b" type="submit" name="next" value="Next" /> 
    <input type="submit" name="reset" value="Reset" /> 
</form>'; 

echo $_SESSION['number']; 
?> 
相關問題