對於網站,用戶應該能夠輸入標題並在表單中發佈並按下提交按鈕以輸入它們。按下提交按鈕後,表單中的數據將寫入與網頁位於同一文件夾的指定文本文件。寫作工作正常,但正如你可以看到下面,我已經試圖做到這一點,如果用戶點擊提交按鈕沒有兩個領域之一(或任何領域)被填寫在網站將提示他們進入文字和沒有文件寫作發生。文本文件中的數據在表單提交時被刪除點擊
我的問題是,當他們點擊提交併且一個字段沒有填充時,這實際上會影響.txt文件,它們也會變成空白。除非表單中的兩個textarea包含要覆蓋的數據,否則我希望這些文件保留其「舊」文本。例如,如果兩個.txt文件都包含文本,並且我單擊表單上沒有文本的提交,那麼這兩個.txt文件將保留文本而不是覆蓋文本(這是當前發生的情況) 。
這裏的HTML和PHP:
<form action="AdminBlog.php" method="post">
Blog Title:<textarea type="text" name="titleInput"></textarea><br><br>
Blog Post:<textarea type="text" name="postInput"></textarea><br><br><br>
<input type="submit" value="Submit"/>
</form>
<?php
$titleFile = fopen("Title.txt","w");
$blogTitle = null;
$postFile = fopen("Post.txt","w");
$blogPost = null;
if(!empty($_POST['titleInput']) && !empty($_POST['postInput'])) {
$blogTitle = $_POST['titleInput'];
fwrite($titleFile,$blogTitle);
fclose($titleFile);
$blogPost = $_POST['postInput'];
fwrite($postFile,$blogPost);
fclose($postFile);
}
if (empty($_POST['postInput']) || empty($_POST['titleInput'])) {
echo "Please enter a title and post.";
}
?>
改變這種最後的if語句ELSEIF否則似乎沒有有所作爲。回聲應該是輸出的,但.txt文件仍然被覆蓋而沒有數據(當textarea爲空並且用戶單擊提交時)。
編輯:只是想添加一些東西。我不確定這是否相關,但是否存在文件中的文本,我無法從另一個.php文件讀取文本。我可以從這一個,但是當試圖在另一個.php頁面中獲取.txt文件內容時,我不能這樣做。這也造成我一個單獨的問題,只是想提一下,如果它是有用的。
如前所述,我希望只有在textarea字段中有數據時才能替換內容。我不希望它添加。 – 4u53r
我試過了,這沒有什麼區別。 – 4u53r