2013-07-21 3 views
2

이 내가 작업하고있는 파일의 단순화 된 버전입니다 :는 앵커 태그에 클릭을 통해 다른 페이지에 PHP 변수를 보내기

<ul> 
<li><a href="prouduct-detail.php">Product1</a></li> 
<li><a href="prouduct-detail.php">Product2</a></li> 
<li><a href="prouduct-detail.php">Product3</a></li> 
</ul> 
:

제품 list.php에 내가 좋아하는 뭔가를

include_once("db_config.php"); 

$product_detail_query = 
      'SELECT * 
      FROM prod_details   
      WHERE 
      product_name = ???'; 

누군가 CLI를하는 경우 :

제품 detail.php에 내가 좋아하는 뭔가를 사용하려면 제품 -list.php에있는 제품에 대한 cks 앵커 태그 사이의 텍스트를 product-detail.php로 보내고 product_name = (여기서 ???)에있는 SQL 쿼리에서 beplaced하여 특정 행을 세우고 세부 사항을 배치하십시오.

이것을 달성하는 가장 좋은 방법은 무엇입니까?

답변

5

그런 제품 detail.php

$product_id = (int)$_GET['product_id']; 

, 당신의 DB 쿼리에 바인드 $의 PRODUCT_ID에 제품 List.php

<a href="product-detail.php?product_id=1">Product</a> 

.

쉽게 URL 인코딩 된 제품 이름으로 바꿀 수 있지만이 경우 고유 한 식별자를 사용해야합니다.

foreach ($products as $product) { 
    echo '<a href="product-detail.php?id=' . $product['id'] . '">' . $product['name'] . '</a>'; 
} 
+0

감사합니다. Curtis! 어떻게 내 DB 쿼리에 $ product_id 바인딩 할 수 있습니까? 구문을 줄일 수 없습니다. 세부 정보 페이지에 $ product_id를 표시 할 수 있고 클릭 한 내용에 따라 내용이 바뀌어 작동 중임을 알고 있습니다. –

+0

신경 쓰지 마세요. mysql_real_escape_string ($ _ GET [ 'product_name']);을 사용해야했습니다. –

관련 문제