2017-08-09 89 views
1

我已經設置了$s=(2+$len)。所以當我點擊繼續時,開始的值將是4,我希望它自動成爲6/8,因爲我再次點擊繼續。我怎樣才能連續計算兩個值

$number=array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'g', 'j'); 
$start=2; 
$len=2; 
$s=(2+$len); 
foreach ($number as $value) {  
    print_r($value) ; 
} 
echo '<br>'.'<br>'; 
if (isset($_GET['start'])) 
    $start= $_GET['start']; 
foreach (array_slice($number,$start,$len) as $k){ 
    print_r($k); 
} 
echo '<br>'.'<br>'; 
echo '<a href="http://192.168.1.6/alpha.php?start='.$s.'&len=2"> 
continue</a>'; 
+4

那麼什麼是問題$start = 2;? – Ayushya

+0

編寫一個函數。 – Carcigenicate

+0

使用會話增量 –

回答

0

您可以使用一個會話(那麼你不能「跳過」通過更改URL任何東西),但似乎你已經開始使用$_GET這(爲你的目標URL看到的是alpha.php?start=' . $s . '&len=2)。似乎如果設置了URL中的參數,則應該從$_GET設置$len$s

兩個變量應該改變以下

$len = isset($_GET['len']) ? (int)$_GET['len'] : 2; // This means that you 'can' drop &len=2 from the link 
$s = isset($_GET['start']) ? (int)$_GET['start']+2 : 2; // This ensures that you always increment it by 2 
0

組使用$_GET你已經有...

$number=array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'g', 'j'); 
//Start is now what is in $_GET if it is set or 2 
$start = isset($_GET['start'])) ? $_GET['start'] : 2; 
$len = 2; 
$s = (2 + $len); 

foreach($number as $value) { 
    print_r($value); 
} 

echo '<br />' . '<br />'; 

if (isset($_GET['start'])) $start = $_GET['start']; 

foreach(array_slice($number, $start, $len) as $k) { 
    print_r($k); 
} 

echo '<br />' . '<br />'; 
echo '<a href="http://192.168.1.6/alpha.php?start=' . $s . '&len=2">continue</a>'; 
?>