2012-02-20 15 views
0

글쎄요, 문제가 있습니다. 나는 이름의 목록을 만들고있다.이 이름은 mysql 쿼리에서 얻어진다. 컨트롤러는 모델에서 그 이름을 받고, 뷰와 패스에 전달한 후에리스트에서 그 이름을 출력한다. 다른 페이지가 열리면 열린다. 이름에 관한 모든 세부 사항 (전화, ecc ...). 내 문제는 내가이 내가 어떻게 내가 목록을 만드는 방법을 알고 이걸 평균을 할 수있는 방법은 다음과 같습니다codeigniter에서 컨트롤러의보기로 데이터를 전달합니다.

<ul> 

     <?php foreach ($users as $item): ?> 

      <li><a href=""><?php echo $item->name . " " . $item->surname; ?></a></li> 

     <?php endforeach; ?> 

</ul> 

나는 세부 사항을 포함하는 페이지로 이동해야 할 이름과 성 (姓)의 링크를 클릭하면 그 이름과 성의 이름. 어떻게하면 돼? 내가보기에서 컨트롤러에 이름과 성을 전달하고 쿼리를해야합니까?

+0

다소 모호하지만, 저는 여러분이 href에 GET 변수를 보내고 있다고 생각합니다. 그리고 컨트롤러는 이것을 읽고 마술을 할 것입니다. –

+0

@AramKocharyan 그 href에서 GET 변수를 보내는 것이 무엇을 의미합니까? 나는 어떻게 할 수 있니? 예를 들어 주시겠습니까? –

답변

2

나는 당신이 당신의 컨트롤러와 뷰를 구성했는지 모르겠지만, 당신은 UID가 고유 한 사용자 ID입니다 사용자에 대해이 같은 구조를 사용할 수 있습니다

href="users.php?uid=123" 

users.php 것 그런 다음 GET 변수 uid을 사용하여 모델에서 사용자 정보를 요청한 다음 해당 정보를보기에 전달하십시오. 는 GET 변수에 읽는 것은과 같이 될 것이다 : 당신이 Sureround 꽤 URL을 만드는 데 사용했다 같은 당신이 아파치의 mod_rewrite 규칙을 적용 할 수있는 기본 기능을 내장하면

if (isset($_GET['uid'])) { 
    $uid = $_GET['uid']; 
    // Load info from model and present in view 
} else { 
    // Handle invalid or unspecified users, perhaps show all available users 
} 

.

1

URL을 통해 각 이름의 고유 ID를 전달해야합니다 (예 : "/ users/getuser/1"). 컨트롤러가 "users"라고 불리는 경우 getuser라는 함수를 만들고 $ this-> uri-> segment (3)을 사용하여 URL에서 ID를 검색합니다. 그런 다음이를 모델에 전달하는 변수에 저장하여 레코드의 세부 정보를 얻은 다음 사용자 상세보기를로드 할 수 있습니다.

function getuser() 
{ 
    $userID = $this->uri->segment(3); 

    // Then just load your model pass your $userID and load your view 
} 

In your href you would just output <?= "https://stackoverflow.com/users/getuser/" . $item->id; ?> 
2

은 다음과 같이 당신의 연결합니다

<li> 
    <a href="/user/get_user_details/<?php echo $item->name; ?>"> 
    <?php echo $item->name . " " . $item->surname; ?> 
    </a> 
</li> 

이 컨트롤러 사용자, 방법 get_user_details로 이동합니다 및 방법에 대한 매개 변수로 $ 항목 -> 이름을 전달합니다. 이 항목 (또는 전달한 항목의 속성)을 사용하여 해당 항목의 세부 정보를 표시하십시오.

관련 문제