2016-06-26 11 views
0

私は3行を持っています。ダイナミックに作成されます。 をクリックすると、が追加され、すべて3つのフィールドが動的に作成されます。それは正常に動作しています。動的な行の挿入は、テーブルを介してPHP

しかし、これらのフィールドを動的にmysqlクエリを通してテーブルに挿入したいとします。私は試しましたが、うまく動作しません。誰でもそれを解決するのを助けてください。ありがとうございました。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 
    <script type="text/javascript"> 
    var rowCount = 1; 

    window.addMoreRows = function(frm) { 
    rowCount++; 
     var recRow = '<div id="rowCount' + rowCount + '"><div class="col-sm-3 text-left">College Name:</div><div class = "col-sm-9"><input type="text" name = "collegename[]" placeholder = "College Name" class = "form-control"/></div><div class = "col-sm-3 text-left" > Affiliated University: </div><div class = "col-sm-9" ><input type = "text" name = "univ[]" placeholder = "Affiliated University" class = "form-control"/> </div><div class = "col-sm-3 text-left" > Course Name: </div> <div class = "col-sm-9" ><input type = "text" name = "cname[]" placeholder = "Course Name" class = "form-control"/></div><div class = "col-sm-3 text-left" > Major & Subject: </div><div class = "col-sm-9"><input type = "text" name = "msub[]" placeholder = "Major Subject" class = "form-control"/></div><div class = "col-sm-3 text-left"> Final & Percentage: </div><div class = "col-sm-9"><input type = "text" name = "fper[]" placeholder = "Final Percentage" class = "form-control"/></div><a href = "javascript:void(0);" onclick = "removeRow (' + rowCount + ');" >Delete</a></div> '; 
$('#addedRows').append(recRow); 
} 
window.removeRow = function(removeNum) { 
    $('#rowCount'+removeNum).remove(); 
} 
    </script> 
    <?php 
    extract($_POST); 
    if (isset($_POST['submit_val'])) { 
    if ($_POST['dynfields']) { 
    foreach (array_keys($dynfields) as $key) { 
    $txt = $dynfields[$key]; 
    $txt1 = $univ[$key]; 
    $txt2 = $cname[$key]; 
    $txt3 = $msub[$key]; 
$txt4 = $fper[$key]; 
    $query = mysql_query("INSERT INTO dynamicfield VALUES ('','','$txt','$txt1','$txt2','$txt3','$txt4')"); 

    } 
    } 
    echo "<i><h2><strong>" . count($_POST['dynfields']) . "</strong> Hobbies Added</h2></i>"; 
    mysql_close(); 
    } 
    ?> 
     <form action="" method="post" id="addedRows"> 
     <h5 align="left"><u style="color:#449D44;">Other Studies</u>-<span style="font:normal 12px agency, arial; color:blue; text-decoration:underline; cursor:pointer;" onclick="addMoreRows(this.form);">Add More Other Studies</span></h5> 
    <span id="rowId"> 
    <div class="col-sm-3 text-left">College&nbsp;Name: </div> 
     <div class="col-sm-9"><input type="text" name="dynfields[]" placeholder="College Name" class="form-control" /></div> 

<div class="col-sm-3 text-left">Affiliated&nbsp;University: </div> 
<div class="col-sm-9"><input type="text" name="univ[]" placeholder="Affiliated University" class="form-control" /></div> 
<div class="col-sm-3 text-left">Course&nbsp;Name: </div> 
<div class="col-sm-9"><input type="text" name="cname[]" placeholder="Course Name" class="form-control" /></div> 
<div class="col-sm-3 text-left">Major&nbsp;Subject: </div> 
<div class="col-sm-9"><input type="text" name="msub[]" placeholder="Major Subject" class="form-control" /></div> 
<div class="col-sm-3 text-left">Final&nbsp;Percentage: </div> 
<div class="col-sm-9"><input type="text" name="fper[]" placeholder="Final Percentage" class="form-control" /></div> 
</span> 
<input type="submit" name="submit_val" value="Submit" /> 

+0

列名は何ですか? – C2486

+0

名前、メールアドレス、携帯電話 – user3526766

+0

クエリで列名を使用してください、私のansを参照してください – C2486

答えて

0

あなたが入力フィールドを名前のところ、私は見つけることができませんでした。

$ _POSTパラメータから取得する配列に従って、入力した入力フィールドに名前を付けます。

<input name="dynfields[]"/> 

括弧は、提出された値が配列の一部であることをPHPに伝えます。 編集した質問では、HTMLはこのようになります。あなたは3つの別々の配列にアクセスすることができるはずフォームを送信した後

<tr> 
    <td><input name="dynfields[]" type="text" value="" size="17%"/></td> 
    <td><input name="dynfields1[]" type="text" value="" /></td> 
    <td><input name="dynfields2[]" type="text" value="" /></td> 
</tr> 
<tr> 
    <td><input name="dynfields[]" type="text" value="" size="17%"/></td> 
    <td><input name="dynfields1[]" type="text" value="" /></td> 
    <td><input name="dynfields2[]" type="text" value="" /></td> 
</tr> 
(...) 

$_POST['dynfields']; 
$_POST['dynfields1']; 
$_POST['dynfields2']; 
+0

私は更新しました。見てください。ありがとうございました。 – user3526766

+0

more ..更新を確認させてください – elfwyn

+0

更新しました。実行中です。しかし、提出後、0,0,0,0,0だけがテーブルに入ります。 – user3526766

関連する問題