0

私は kohana 3.3 を使用してデータベースから呼び出している配列を持っています。データをビューに取得しました。print_r($variable) で取得できます。配列内のデータに基づいて、movenext、movefirst、moveprevious、および movelast ボタンを作成したいと考えています。

私のモデルはこのように見えます

    public function get_customer_list(){    
$cust_list= DB::select('*')->from('customers')
                    ->order_by('id','ASC') 
                    ->execute()
                    ->as_array();
//print_r($cust_list);                  
return $cust_list;

私のコントローラーは次のようになります

 $id=@$_POST["id"];
    //echo $id;
$amend  = Model::factory('amendments')->get_customer_list(@$d);
$this->page_title = 'amending';
$this->content = View::factory('forms/amendment_next');
//$this->rightwidget =view::factory('rightwidget');
$this->amend = $amend;
$this->next = $id;

私の見解はこのように見えます

foreach ($amend[0] as $key=>$value){
        echo '<p><span>'.$key.'</span><input id="'.$next.'" class="contact" type="text" name="'.$key.'"value="'.$value.'" /></p>';          
                    }
<a href="#" id="getnext">Next Record</a>
<a href="javascript:void(0);" id="previous">Previous Record</a><button >Next Record</button><button>Last Record</button>

リンクやボタンを使っても構いません

ここでスタックを助けてください。私の脳はロックされています。

4

3 に答える 3

0

ビューでこれを試してみてください。JavaScriptコードが必要です(私はjQueryを使用しました)

---next() 例---

$(document).ready(function (){
    var customers = <?php echo json_encode($amend) ?>;
    var count = 0;

    function nextItem(){
        if(count >= customers.length )return;
        console.log("customer:",customers[count]['id'],customers[count]['name']);
        count =++count;
    }
})

于 2013-03-19T17:59:31.133 に答える
0

私はあなたの例を使用して、問題について自分自身を投影しました。そして今、それはここで解決された状態です。コントローラーは今このように見えます

   $id=@$_GET["id"];
$amend  = Model::factory('amendments')->get_customer_list(@$d);
$this->page_title = 'I&M CRB Online App amending';
$this->content = View::factory('forms/amendments');
//$this->rightwidget =view::factory('rightwidget');
$this->amend = $amend;
$this->next = $id;

ビューは次のようになります

 <?php 
if (!$next){
$next = "0";}

$nextid = $next+"1";
$previd=$next-"1";
?>
<a href="<?php echo HTTP_PATH; ?>/amend/getnext/?id=<? echo "0"; ?>">First Record </a> |
<a href="<?php echo HTTP_PATH; ?>/amend/getnext/?id=<? echo $previd;?>">Previous Record</a> |
<a href="<?php echo HTTP_PATH; ?>/amend/getnext/?id=<? echo $nextid;?>">move next</a> |
<a href="<?php echo HTTP_PATH; ?>/amend/last">Last Record</a> 
<?php
        foreach (@$amend[@$next] as $key=>$value){
        echo "<p><span>".$key."</span><input class='contact' type='text' name='".$key."'value='".$value."' /></p>"; 
}   


?>

最後のレコードでは、別のモデル関数を使用する必要がありました

public function get_last_customer(){    
    $last_customer= DB::select()->from('customers')
                        ->order_by('id','DESC')
                        ->limit(1)
                        ->execute()
                        ->as_array();
    return $last_customer;  

サポートしてくださった皆様、そして私に提供してくださった回答に感謝します。

于 2013-04-02T13:59:42.047 に答える