2016-06-13 10 views
2

JavaScriptの値を渡してPHPでデータベースに挿入する必要があります。私はURLを試しましたが、うまくいきません。JavaScript値をPHPに渡す

2つの変数を挿入する必要があります。

データベースからのすべての値が表に印刷され、次に選択されます。

このファイルの名前はitems.phpです。

<td><input type="text" class="form-control" id="quantity" placeholder="" ></td> 
<td><center><button type="submit" onclick="myFunction()" value="<?php echo 'R-' . $id_print ;?>" id="item"> <i class="icon-cart"></i></button></center></td> 

私は値を取得するには、このスクリプトを使用します。

<script type="text/javascript"> 
    function myFunction() { 
     var x = document.getElementById("quantity").value; 
     var y = document.getElementById("item").value; 

     window.location.href = "items?w1=" + x + "&w2=" + y; 
    } 
</script> 

スクリプトは、スクリプトからの値を別のURLにリダイレクトしない理由を私は知りません。

デバッグ時に両方の値が取得されます。

答えて

1

<button>要素は、それがフォームを送信するため、この要素に割り当てられたJavaScriptのクリックイベントハンドラの実行を防ぎクリック、type="submit"を持っている場合。 typebuttonに変更してください。フォームは送信されません。

修正されたコード:

<td><input type="text" class="form-control" id="quantity" placeholder="" ></td> 
<td><center><button type="button" onclick="myFunction()" value="<?php echo 'R-' . $id_print ;?>" id="item"> <i class="icon-cart"></i></button></center></td> 
0

html-formsを使用する必要があります。
送信時に入力値が自動的に送信されるためです。この(テストしていない)のような
ルック:

<!-- your html --> 
<form action="items" method="post"> 
    <!-- your table --> 
    <td><input type="text" class="form-control" id="quantity" name="w1" /></td> 
    <td><input type="text" class="form-control" id="item" name="w2" value="<?php echo 'R-' . $id_print ;?>" onclick="this.form.submit()" /></td> 
</form>