2016-04-17 44 views
2

這是一個具有挑戰性的任務,因爲我想知道是否有任何方法可以在每次刷新我的php腳本時訪問我的下一行文本文件,而不會將最後一個計數存儲到數據庫或本地在一個文件中?每當PHP腳本加載時顯示下一行

我知道這聽起來很愚蠢,但我只是好奇,如果有什麼方法仍然不是我所知道的。

回答

2

您可以使用會話/ cookie來存儲當前文件行。你也可以從你的請求中獲取當前行。

例如,您的網址是:file.php線= 1,每刷新你重定向你的網頁file.php線= 2

<?php 
$counter = "counter4"; 
if(!isset($_COOKIE[$counter])) { 
    setcookie($counter, 1, time() + (86400 * 365), "/"); 
    echo "Current Line number: 1"; 
} else { 
    $val = (int)$_COOKIE[$counter]; 
    //Increase line number; 
    $val++; 
    echo "Next Line number: " . $val; 
    //make your file process 


    //at the and set new line number 
    setcookie($counter, $val, time() + (86400 * 365), "/"); 
} 
?> 
+0

是不是很奇怪,我必須加載不同的網址,但我不想每次改變我的網址然後呢? –

+0

你打敗了我。由於提交者並未將客戶端存儲排除在外,因此將客戶端localStorage添加到答案中也不錯。 – user1235831

+1

@ Mr.Z所以你應該專注於會話或cookie。如果您在關閉瀏覽器時選擇會話選項,您的計數器將會丟失,但是如果您選擇cookie,則只有當您清除cookie時,計數器纔會丟失。 – merdincz

1

所以這個下降到你?想要存儲您從以前的腳本中刪除的哪一行。有幾個選項:

1-查詢字符串,這意味着將其保存在url中。例如:www.foo.com/index.php?line=5

2-查詢字符串,然後更改URL。 和以前一樣,但是如果你不想在最後使用?line = 5,你可以使用一些php函數來改變URL的外觀。以下是描述該過程的鏈接: How to change appearance of URL from within a PHP script

3-發佈方法:這可能是您正在查找的內容。當提交表單時,可以將信息發送給使用不出現在URL中的「POST」方法的另一個PHP腳本,並能與像檢索:

<?php 
$lineNumber = $_POST['line']; 
?> 

我認爲如果你使用這個方法,你會希望腳本自動執行。一種方法,你可以做到這一點與javascript:

<script> 
    document.getElementById('dateForm').submit(); // SUBMIT FORM 
</script> 
+0

是的,方法3對我來說確實有用,merdincz徹底地展示了它 –