2014-10-08 63 views
-2

我正在顯示來自我的Raspberry Pi(門關閉/門打開)的日誌文件。
我想有可能用按鈕刪除這個日誌文件。
並在同一個按鈕上單擊頁面應重新加載並顯示空的日誌文件。在一些php代碼後重新加載頁面<input type =「submit」>

我有下面的代碼:

<form method="get" action="test.php"> 
    <input type="submit" value"test" name="test1"> 
</form> 
<?php 
if(isset($_GET['test1'])) { 
    unlink('test.txt'); 
    touch('test.txt'); 
} 
?> 

此代碼重新加載頁面,但不顯示空的日誌文件。 (但它會刪除日誌文件並創建一個新的空文件)。
我現在想要的是頁面應該在PHP代碼後重新加載,所以空的日誌文件會立即顯示。 我完全不知道我能做什麼? 任何提示?

+0

爲了什麼目的應的頁面重載?提交表單將導致刷新(或重定向,如果test.php是另一個文件) – Steve 2014-10-08 21:58:25

+0

我有一個日誌文件,按鈕刪除這個日誌文件。這工作正常,但我想用頁面重新加載立即顯示它。 – jrenk 2014-10-08 21:59:07

+2

你爲什麼要重新加載?在提交後,頁面被重新加載,並且HTML中的所有內容都是新鮮的。 – 2014-10-08 21:59:14

回答

2

http://php.net/manual/en/function.header.php

<?php 

if(isset($_GET['test1'])) { 
    unlink('test.txt'); 
    touch('text.txt'); 
    header("Location: " . $_SERVER['PHP_SELF']); 
    exit(); 
} 
?> 
+0

謝謝這就是我想要的! – jrenk 2014-10-08 22:04:03

+1

@jrenk但爲什麼?有什麼目的? – 2014-10-08 22:07:27

+0

我有一個日誌文件顯示。使用按鈕我想刪除它,也顯示一個空的日誌文件 – jrenk 2014-10-08 22:28:12

0

你可以先添加PHP代碼,所以數據將是最新的無重裝:

<?php 
if(isset($_GET['test1'])) { 
    unlink('test.txt'); 
    touch('text.txt'); 
} 
?> 
<form method="get" action="test.php"> 
    <input type="submit" value"test" name="test1"> 
</form> 
+1

,如果他已經有html輸出,'header'函數將不起作用,相反,他可以使用html'echo''; – Dorvalla 2014-10-08 22:04:09

+1

1.輸出HTML到瀏覽器後,」header()「調用將不起作用,2. php代碼將在html點擊瀏覽器之前運行,無論你放置在哪裏。 – jeroen 2014-10-08 22:04:20

+0

Dorvalla/jeroen,感謝您指出這一點。我刪除了我的「html第一」解決方案。通常情況下,PHP代碼優先,然後是html輸出 – Yoric 2014-10-08 22:08:55

相關問題