2012-07-16 34 views
5

Có cách nào để gửi dữ liệu từ bộ điều khiển để xem hay không. những gì tôi đang làm là người dùng có tùy chọn liên kết và theo liên kết người dùng nhấp vào dữ liệu tương ứng được chuyển đến bộ điều khiển và một chế độ xem khác được tải từ bộ điều khiển tương ứng với liên kết đó. Nhưng tôi không biết làm thế nào để làm điều đó. Tôi đang sử dụng lửa trại đây là mã điều khiển của tôi: -gửi tham số từ bộ điều khiển để xem

function my_tickets() { 
     $username = $this->auth->username(); 
     $this->load->model('helpdesk_model'); 
     $result_set = $this->helpdesk_model->my_tickets($username); 
     foreach($result_set->result() as $data) { 
      $title[] = $data->title; 
      $category[]=$data->category; 
      $priority[]=$data->priority; 
      $date[]=$data->date; 
      $post_status[]=$data->post_status; 
      $userfile_path[] = $data->userfile_path; 
     } 
     $arraysize=count($title); 
     Template::set('arraysize',$arraysize); 
     Template::set('title',$title); 
     Template::set('category',$category); 
     Template::set('priority',$priority); 
     Template::set('date',$date); 
     Template::set('post_status',$post_status); 
     Template::set('username',$this->auth->username()); 
     Template::set('userfile_path',$userfile_path); 
     Template::render(); 
    } 
    function full_post(){ 
     Template::render(); 
    } 
    } 

Trong phần mô hình của tôi: -

function my_tickets($username){ 
     $this->db->select('title,userfile_path,category,priority,date,post_status'); 
     $this->db->where('username',$username); 
     $result = $this->db->get('tbl_tickets'); 
     return $result; 
     } 

quan điểm của tôi là: -

<?php 
$arraysize =Template::get('arraysize'); 
$title[] = Template::get('title'); 
$category[]=Template::set('category'); 
$priority[]=Template::set('priority'); 
$date[]=Template::set('date'); 
$post_status[]=Template::set('post_status'); 
$username = Template::set('username'); 
$userfile_path = Template::set('userfile_path'); 
?> 
<h3>Total Number Of posts :&nbsp; <?php echo $arraysize; ?> </h3> 
<h2>Your Posts</h2> 
<?php echo "serail. title | category | priority | date of starting post | post status "; ?> 
<?php 
    for ($i=0; $i <$arraysize; $i++) { 
    ?> 
    <p> <?php echo ($i+1).". ".$title[$i]." | ".$category[$i]." | ".$priority[$i]." | ".$date[$i]." | ".$post_status[$i]; 
      echo "<a href=\"/helpdesk/full_post\">Click to see </a>"; 
     ?> 
    </p> 
    <?php 
    } 
    ?> 

Trong chức năng điều khiển full_post của tôi Tôi muốn tham số mà người dùng nhấp vào trong liên kết click to see. helpdesk là tên bộ điều khiển của tôi. helpdesk_model là tên mẫu của tôi. và my_tickets là tên chế độ xem của tôi ..

Trả lời

1

tôi đang làm điều này với sự giúp đỡ của hình thức sử dụng trường dữ liệu ẩn: - Tôi đã hơi thay đổi trang điểm của tôi như thế này: -

for ($i=0; $i <$arraysize; $i++) { 
    echo "<p>".($i+1).". ".$title[$i]." | ".$category[$i]." | ".$priority[$i]." | ".$date[$i]." | ".$post_status[$i]."</p>"; 
    echo form_open('/helpdesk/full_post'); 
    echo form_hidden('path',$userfile_path[$i]); 
    echo form_submit('submit', 'click to see'); 
    echo form_close(); 
    } 

và In trang điều khiển tôi đang làm: -

function full_post(){ 
     Template::set('path',$this->input->post('path')); 
     Template::render(); 
     } 

đây là điều tôi cần, đây là cách hay để làm điều đó ..? Có ý tưởng nào khác tốt hơn để làm điều đó ..?

0

Tạo chức năng điều khiển có tham số và cung cấp liên kết có tham số trong đó.

echo anchor('controller/functionName/parameter','display text'); 

function functionName($parameter ='') 
{ 
    //Do something with the parameter here when user click on the displayed text. 
} 

Tôi không chắc chắn, nếu điều này là bạn muốn, bởi vì đây là điều rất dễ dàng.

+0

Không, tôi không muốn điều này. Tôi muốn gửi một số giá trị từ view tới controller mà giá trị là liên kết được nhấn bởi người dùng. giả sử theo quan điểm của tôi, tôi có 3 liên kết a, b và c, nếu người dùng nhấp vào một chức năng điều khiển sau đó sẽ được gọi và giá trị tương ứng một thông báo sẽ được chuyển từ chế độ xem sang chức năng đó – avinashse

+0

có thể thực hiện bằng kỹ thuật trên. Nếu bạn tạo một liên kết đến http://yoursite.com/controller/function/a thì một sẽ được chuyển đến hàm. Cùng một cách có thể có một liên kết khác b. Do u có nghĩa là để vượt qua bằng cách sử dụng ajax? – Nish

+0

thực sự tôi không muốn vượt qua chi tiết của tôi trong tham số, đó là điều .. và không có ajax sẽ xua tan nội dung trong cùng một trang nhưng tôi phải gọi một chế độ xem khác từ bộ điều khiển – avinashse

Các vấn đề liên quan