2016-04-07 36 views
0

有人告訴我,我可以在不必使用表單的情況下將數據和用戶發送到頁面。基本上我所擁有的是一個有產品的頁面(頁面稱爲產品),然後是一個編輯按鈕,當我點擊它時,它會將我帶到另一個名爲「編輯產品」的頁面,該頁面允許我查看更多信息(輸入) ,以便我可以編輯/添加關於該記錄的信息。如何通過鏈接將數據和用戶發送到頁面

我一直在這樣做的形式,併發送用戶在窗體的動作屬性。我想要在產品頁面上使用當前表單的某些元素的AJAX,但我希望完全刪除表單代碼。 (只是形式標籤)。

這裏是我的代碼:

$stmt = $dbc->query("SELECT `id`,`first`,`last`,`product` FROM users"); 
    $stmt->setFetchMode(PDO::FETCH_ASSOC); 

    while($row = $stmt->fetch()) { 
    ?> 
    <form method="POST" action="edit-product"> 
     <tr> 
      <td><?php echo $row['id'];?>"</td> 
      <td><?php echo $row['first'];?></td> 
      <td><?php echo $row['last'];?></td> 
      <td><?php echo $row['product'];?></td> 
      <input name="id" type="hidden" value="<?php echo $row['id'];?>" readonly> 
      <input name="first" type="hidden" value="<?php echo $row['first'];?>"> 
      <input name="last" type="hidden" value="<?php echo $row['last'];?>"> 
      <input name="product" type="hidden" value="<?php echo $row['product'];?>"> 
      <td><input name="save" type="submit" value="Save"></td> 
      <td><div class="delete-class" name="delete" id="<?php echo $row['id']; ?>">Delete</div></td> 
      <td><input name="edit" type="submit" value="Edit"></td> 
     </tr> 
    </form> 
    <?php } ?> 
    </tbody> 
</table> 

目前,在我的編輯產品頁面,我接收到的數據是這樣的:

$id = $_POST['id']; 
$first = $_POST['first']; 
$last = $_POST['last']; 
$product = $_POST['product']; 

我怎麼可以在用戶和產品數據發送到編輯產品頁面通過更改此或任何其他代碼?

<td><input name="edit" type="submit" value="Edit"></td> 

回答

0

您可以使用HTML localStorage存儲表單的值,並在用戶進入下一頁/站點時在本地檢索它們。無需服務器端數據傳輸。

localStorage的實施示例。

// Save data to the current local store 
localStorage.setItem("username", "John"); 

// Access some stored data 
alert("username = " + localStorage.getItem("username")); 

您也可以以同樣的方式使用的sessionStorage - 但數據只存儲,直到您關閉瀏覽器或NAV離開頁面。

+0

我不希望它成爲一種形式從這一點上。我將針對不適合使用表單的不同功能使用相當數量的AJAX。 – Becky

+0

它不必是一種形式。您可以將任何來源的數據存儲在localStorage的頁面上。您也可以根據需要製作AJAX查詢 - 但是如果您不想在頁面更改時進行AJAX操作 - localStorage是處理客戶端臨時數據存儲的好選擇(也是更快)。 – Korgrue

相關問題