2017-02-02 6 views
0

データがデータベースから取得され、単純なテーブルとして表示されるindex.phpページがあります(各行はjsスクリプトで選択できます)。PHPのクエリで使用されるhtmlフォームにjs変数を使用

enter image description here

私はJS変数にテーブルからすべての選択と店舗ID番号を行いjsのスクリプトを持っています。

$(function() { 

/* Get all rows from table but not the first one 
* that includes headers. */ 
var rows = $('tr').not(':first'); 

/* Create 'click' event handler for rows */ 
rows.on('click', function(e) { 

    /* Get current row */ 
     var row = $(this); 

    /* highlights the row*/ 
     rows.removeClass('highlight'); 
     row.addClass('highlight'); 

    /*outputs the ID of the selected row to rowID variable*/ 
     var currentRow=$(this).closest("tr"); 
     var col1=currentRow.find("td:eq(0)").html(); 
     var rowID=col1; 


    }); 

}); 

私は別のdbUpdate.phpスクリプトにhtml形式とPHPクエリがあります。

if(!$_POST["e1"]){ 

    $e1Error = "Please enter value <br>"; 
} else {  
    $e1 = validateFormData ($_POST["e1"]); 
} 

if(!$_POST["rowID"]){ 

    $rowID = validateFormData ($_POST["rowID"]); 
} 

// check variable has data 
if($e1 && $rowID) { 
    $query = "UPDATE athletes SET e1 = ($e1) WHERE id = ($rowID) "; 

、こことき、私のHTMLフォーム

<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post"> 
      <small class="text-danger">* <?php echo $e1Error; ?></small> 
      <input type="text" placeholder="e1" name="e1"><br><br> 
      <input type="hidden" id="rowID1" name="rowID" value=""/> 

は、私の目的は、jsの変数ROWIDからそのID番号を取得し、私のdbUpdate.phpフォーム(名前=「ROWID」)に保管することです私のhtmlテーブルの行の1つを選択してください(写真に示されています)。 (それはあなたが使用しているようにそれが見えるものなので、jQueryの構文を使用して)ここ

+0

そして? 'rowID'値はどこで得られますか?あなたはそれを読んでいますか(それはあなたのjavascriptには表示されません)? 2ページ目に投稿していますか? –

+0

@ DavidT.Macknet rowIDは、var col1 = currentRow.find( "td:eq(0)")から得られます。私が立ち往生しているところでは、そのrowIDを他のページに投稿する仕組みはわかりません – Arnoldas

+0

隠された入力フォームを持ち、投稿しなければならない、または何かを使う必要があるでしょうそれを投稿するにはajaxのようにするか、クエリ文字列の一部としてそのパラメータを持つurlに移動する必要があります。 –

答えて

0

ajax例です:今

 rows.on('click', function(e) { 
      $.ajax({ 
       url: '/dbUpdate.php', 
       type: 'POST', 
       data: { rowID: $(rowID).val() }, 
       cache: true, 
       success: function (data) { 
        alert('Woot!'); 
       } 
       , error: function (xhr, ajaxOptions, thrownError) { alert(thrownError); } 
      }); 
     }); 

、明らかに、それはちょうど戻ってあなたの成功の機能への復帰を引くために起こっています。 dbUpdate.phpページがクライアントにHTMLを返そうとしている場合、それは別の話です。あなたは何をしようとしていますか?

+0

基本的にadmin> userシステムとして動作します。管理者は行を選択し、ユーザーはdbUpdate.phpのフォームを使用してe1値を割り​​当てますが、私はちょっと馬鹿だと気付きました...ユーザーが引き出すためにデータベースにそのrowID値を格納する必要があります – Arnoldas

+0

うれしいあなたは見つけた!時にはそれを話すことで、たとえそれがまったく関連していなくても、答えを見るのに役立ちますか? :) –

関連する問題