2016-04-07 13 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']; 

私は、ユーザーと製品データを送信することができますどのようにこの製品または他のコードを変更して、製品の編集ページを開きますか?

答えて

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を使用することもできますが、データはブラウザを閉じるかページから移動するまで保存されません。

+0

私はそれがこの時点からフォームになりたくないと思っています。私はAJAXのかなりの量を、フォームとうまく連携していないさまざまな機能に使います。 – Becky

+0

フォームである必要はありません。ページ上の任意のソースからのデータをlocalStorageに保存することができます。必要に応じてAJAXクエリを作成することもできますが、ページの変更時にAJAXを実行したくなければ、localStorageはクライアント側で一時的なデータストレージを処理する優れた方法です。 – Korgrue

関連する問題