2014-10-06 68 views
-1

我正在嘗試使用通過隱藏窗體域輸入的數據寫入文件。但是,當數據被寫入新文件時,它實際上並不會在那裏。我用它寫的其他內容就在那裏,但中的數據沒有顯示出來。PHP從隱藏窗體不工作寫

如果我在Firefox中檢查元素,的字段是正確填充。這裏是我的代碼:

PHP寫腳本(postthereview.php):

<?php 

$firstname = $_POST['firstname']; 
$busname = $_POST['busname']; 
$review = $_POST['review']; 
$data = nl2br('<b>Name:</b>' . ' ' . $firstname . "\n" . '<b>Business Name:</b>' . ' ' . $busname . "\n" . '<b>Review:</b>' . ' ' . $review . "\n" . '<hr>'); 

    $file = "../reviewsonpage.php"; 
    $contents = file_get_contents($file); 
    $ret = file_put_contents($file, $data . $contents); 
?> 

HTML表單:

<form action="postthereview.php"> 
    <input type="hidden" name="firstname" value="John"> 
    <input type="hidden" name="busname" value="Test Business"> 
    <input type="hidden" name="review" value="Hey! Here is my review!"> 
    <input type="submit" value="Post it!"> 
</form> 

我是新來這個,只是想不通,爲什麼沒有按數據沒有通過!我究竟做錯了什麼?

在此先感謝!

+0

出於好奇,是這兩個相同的PHP網頁上?也就是說,在表單發佈之前,服務器端代碼是否在頁面*加載時運行? – David 2014-10-06 01:25:25

+0

David - 不,表單在一個文件中,PHP腳本在另一個文件中。 – 2014-10-06 01:26:36

+0

基本上,表單只是坐在隱藏字段中已有數據的網頁上。然後,如果有人點擊提交按鈕,它會調用腳本來寫入文件。 – 2014-10-06 01:28:21

回答

3

您忘記方法=「郵報」
始終把方法獲取或發佈
https://developer.mozilla.org/en/docs/Web/HTML/Element/Form

<form action="postthereview.php" method="post"> 
    <input type="hidden" name="firstname" value="John"> 
    <input type="hidden" name="busname" value="Test Business"> 
    <input type="hidden" name="review" value="Hey! Here is my review!"> 
    <input type="submit" value="Post it!"> 
</form>