2014-10-13 66 views
0

也許這是一個非常基本的問題,但在谷歌搜索之後我找不到任何合適的答案,而我對此很新。我該如何解析PHP foreach循環中的值到url中並將其設置爲查詢字符串?在輸出中使用來自foreach循環的值

聽起來不清楚?讓我解釋。

所以,這裏是我的PHP代碼:

<?php foreach ($results as $data){ ?> 
    <tr> 
     <td><?php echo $data->emp_id; ?></td> 
     <td><?php echo $data->emp_name; ?></td> 
     <td><?php echo $data->emp_mobile_no; ?></td> 
     <td><a href="<?php echo base_url(); ?>index.php/admin_logins/employee3"><button id="button_edit">Edit</button></a></td> 
     <td><a href="<?php echo base_url(); ?>index.php/admin_logins/employee4"><button id="button_delete">Delete</button></a></td> 
    </tr> 
<?php }?> 

現在,我想做的事情是這樣的:

<td><a href="<?php echo base_url(); ?>index.php/admin_logins/employee3/value of $data->emp_id"><button id="button_edit">Edit</button></a></td> 

,同樣,這也:

<td><a href="<?php echo base_url(); ?>index.php/admin_logins/employee4/value of $data->emp_id"><button id="button_delete">Delete</button></a></td> 

現在,做到這一點的正確方法是什麼?

回答

4

只需使用下面的代碼:

<?php foreach ($results as $data){ ?> 
    <tr> 
     <td><?php echo $data->emp_id; ?></td> 
     <td><?php echo $data->emp_name; ?></td> 
     <td><?php echo $data->emp_mobile_no; ?></td> 
     <td><a href="<?php echo base_url(); ?>index.php/admin_logins/employee3/<?php echo $data->emp_id; ?>"><button id="button_edit">Edit</button></a></td> 
     <td><a href="<?php echo base_url(); ?>index.php/admin_logins/employee4/<?php echo $data->emp_id; ?>"><button id="button_delete">Delete</button></a></td> 
    </tr> 
<?php }?> 
+0

非常感謝@hardik。我以前不知道這個語法。這正是我所期待的。 –

+0

@CrescentMoon很樂意幫助你... :) –

-1

你需要的是從視圖中ID傳遞到您的controller。這應該使用help:

在您的看法:

<?php foreach ($results as $data){ ?> 
    <tr> 
     ... 
     <td><a href="<?php echo base_url(); ?>index.php/admin_logins/employee/edit?id={$data->emp_id}"><button id="button_edit">Edit</button></a></td> 
     ... 
    </tr> 
<?php }?> 

在您的控制器employee

function edit($id = NULL) 
{ 
    if(is_null($id)) 
     exit('Invalid employee id'); 

    $this->load->model('employee_model', 'employee'); 

    $employee = $this->employee->read($id); 

    //do your stuff here 
} 

在你的模型`employee_model':

function read($id = NULL) 
{  
    return $this->db->where('emp_id', $id) 
        ->get('employee')->row_array(); 
} 
1

這裏有一個辦法用heredoc做到這一點,使其更容易看:

<?php 
foreach ($results as $data) { 
    $base_url = base_url(); 
    echo <<<TABLEROW 
     <tr> 
      <td>{$data->emp_id}</td> 
      <td>{$data->emp_name}</td> 
      <td>{$data->emp_mobile_no}</td> 
      <td><a href="{$base_url}index.php/admin_logins/employee3/{$data->emp_id}"><button id="button_edit">Edit</button></a></td> 
      <td><a href="{$base_url}index.php/admin_logins/employee4/{$data->emp_id}"><button id="button_delete">Delete</button></a></td> 
     </tr> 

    TABLEROW; 
} 
?> 
+0

+1完全忘了heredoc。這是另一個好方法。 –