2017-05-10 34 views
0

foreach()の入力テキストから値を取得する方法については、コードを実行してテーブル内の最後の行を取得します。ここでコード内のforeach内の入力テキストから値を取得

は、ビューのコードです:提出がクリックされたときに

<?php 
$count = 1; 
foreach ($data as $row) {?> 

<thead> 
    <th>No</th> 
    <th>Out ID</th> 
    <th>Name</th> 
    <th>Dorm</th> 
    <th>Date</th> 
    <th>Approve</th> 
    <th>Comment</th> 
    <th>Action</th> 
</thead> 

<tbody> 
<tr>              
    <td><center><?php echo $count; ?> </td> 
    <td><center><?php echo $row->IdOut; ?> </td> 
    <td><center><?php echo $row->Name; ?> </td> 
    <td><center><?php echo $row->Dorm; ?> </td> 
    <td><center><?php echo $row->Date; ?> </td> 
    <td><center><input type="checkbox" name="approvechk"></td> 
    <td><center><input type="text" name="aproverComment"></td> 
    <td><center><input type="submit" name="submit" value"submit"></td> 
</tr> 
</tbody> 

<?php $count ++; 
} 
?> 

は、どのように私はテーブルから確認された行や入力を得ることができますか?

+0

おかげで必要とされ、悪い英語のためのsory(まだ勉強中: D) – zero

答えて

0

あなたは次のようにあなたのコード内のいくつかの変更を行う必要があります。

ここ
<center><input type="checkbox" name="approvechk[]"> 

approvechk[]:あなたのようにその名前を変更する必要がありますので、上記のチェックボックスのステートメントは、内部にforeach()ループを常駐

<center><input type="checkbox" name="approvechk"> 

複数の値を保持できるように使用されます。

その後、入力要素全体がフォームタグ内にラップされないため、サーバーに直接送信することはできません。したがって、<form>タグで囲むか、jqueryを使用してユーザーデータをサーバーに送信してください。

+0

ソーリー、私はフォームタグを置くのを忘れてしまった。そしてそれをやった後、私はちょうど入力テキストをノーマルまたは?たとえば、コントローラで送信するときに入力テキストとチェックフィールドを取得するにはどうすればよいですか? $ this-> input-> post( 'approvechk []')のようにしてください。 $ this-> input-> post( 'approverComment')と入力します。またはどのように? – zero

0

以下のコードは動作しますが、テーブル内のデータを扱う方がはるかに優れているdatatablesを見た方が良いでしょう。 >

<?php 
    $count = 1; 
    foreach ($data as $row) {?> 

    <thead> 
    <th>No</th> 
    <th>Out ID</th> 
    <th>Name</th> 
    <th>Dorm</th> 
    <th>Date</th> 
    <th>Approve</th> 
    <th>Comment</th> 
    <th>Action</th> 
    </thead> 

    <tbody> 
    <tr>              
     <td><center><?php echo $count; ?> </td> 
     <td><center><?php echo $row->IdOut; ?> </td> 
     <td><center><?php echo $row->Name; ?> </td> 
     <td><center><?php echo $row->Dorm; ?> </td> 
     <td><center><?php echo $row->Date; ?> </td> 
<form type="post"> 
     <td><center><input type="checkbox" name="approvechk"></td> 
     <td><center><input type="text" name="aproverComment"></td> 
     <td><center><input type="submit" name="submit" value"submit"></td> 
</form> 
    </tr> 
    </tbody> 

    <?php $count ++; 
    } 
    ?> 
+0

返信ありがとう、どのように私は入力を取得し、コントローラからチェックできますか? – zero

0
<thead> 
    <th>No</th> 
    <th>Out ID</th> 
    <th>Name</th> 
    <th>Dorm</th> 
    <th>Date</th> 
    <th>Approve</th> 
    <th>Comment</th> 
    <th>Action</th> 
    </thead> 

    <tbody> 
<?php 
    $count = 1; 
    foreach ($data as $row) { ?> 
    <tr>              
     <td><center><?php echo $count; ?> </td> 
     <td><center><?php echo $row->IdOut; ?> </td> 
     <td><center><?php echo $row->Name; ?> </td> 
     <td><center><?php echo $row->Dorm; ?> </td> 
     <td><center><?php echo $row->Date; ?> </td> 
     <td><center><input type="checkbox" name="approvechk"></td> 
     <td><center><input type="text" name="aproverComment"></td> 
     <td><center><input type="submit" name="submit" value"submit"></td> 
    </tr> 
<?php $count ++; 
    }? 
    </tbody> 

行だけ(、あなたはforeachの内部でテーブル全体を含める必要がいけない、この方法を試してみてください)、編集された@SiHaため

+0

お返事ありがとうございます。投稿をクリックすると、選択した行がコントローラでどのように取得されますか? – zero

関連する問題