2012-07-16 15 views
5

Görüntülenecek denetleyiciden veri göndermenin bir yolu var mı. Yaptığım şey, kullanıcının bağlantılara sahip olması ve kullanıcı tarafından tıklatılan bağlantılara göre denetleyiciye karşılık gelen verinin geçtiği ve başka bir görüntünün bu bağlantıya karşılık gelen denetleyiciden yüklendiği. Ama bunu nasıl yapacağımı bilmiyorum. Burada ateş kullanıyorum benim denetleyicisi kodu: - Benim modeli bölümündedenetleyiciden parametre göndermek için

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(); 
    } 
    } 

: -

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; 
     } 

görüşlerim şunlardır: - Benim full_post kontrolör fonksiyonunda

<?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 
    } 
    ?> 

Kullanıcının click to see numaralı bağlantıya tıkladığı parametreyi istiyorum. yardım masası benim denetleyici ismim. helpdesk_model benim model adım. ve my_tickets benim görünüm adıdır ..

cevap

1

Ben gizli alanları kullanarak formun yardımıyla yapıyorum: - Ben var biraz böyle benim bakış sayfasını değiştirmek: -

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(); 
    } 

ve denetleyici sayfasında yapıyorum: -

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

İhtiyacım olan şey bu, bunu yapmanın iyi bir yolu ..? Bunu yapmak için başka daha iyi bir fikir var mı ..?

0

Parametre ile bir denetleyici işlevi oluşturun ve parametre ile bağlantı sağlayın.

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

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

Bu, eğer isterseniz, emin değilim çünkü bu çok kolay bir şey.

+0

Hayır Bunu istemiyorum. Ben kullanıcı tarafından tıklanan bağlantı olduğunu kontrol etmek için görünümden bir değer göndermek istiyorum .. benim görüşüme göre 3 bağlantı a, b ve c varsa, eğer kullanıcı o zaman bir kontrol düğmesine basarsa ve bu fonksiyona karşılık gelen değer Yukarıdaki teknik kullanılarak yapılabilir – avinashse

+0

bu işleve görünümden geçilecektir. Http://yoursite.com/controller/function/a adresine bir bağlantı oluşturursanız, işleve geçilecek. Aynı şekilde başka bir bağlantı olabilir b. Ajax kullanarak geçmek mi demek istiyorsun? – Nish

+0

aslında benim parametrelerimi iletmek istemiyorum, bu bir şey .. ve ajax içeriği aynı sayfada dağıtacaktır ama ben denetleyiciden başka bir görüntü aramak zorundayım – avinashse

İlgili konular