单击链接查询数据库

时间:2013-05-14 19:34:16

标签: php anchor

我正在从我的数据库中检索产品并在while循环中列出它们。喜欢这个

<?php
  while($row = mysql_fetch_row($result)){
    echo '<div class="product_info">';
     echo '<div class="category_product_title"><a href="category-page.php">Product</a>';
     echo '</div>';
      echo '<div   class="category_product_number">#'.$row[0].'('.$row[1].')'.'</div>';//prints id and name
     echo '<div class="category_product_description">'.$row[2].'</div>';//prints description
     echo '<div class="category_product_price">'.$row[4].'TL</div>';//prints price
      echo '<div class="category_details"><a href="productpage2.php">DETAILS</a></div>';//The link to   list the product details
    echo '</div>';
    echo '</div>';
 }
?>

我想通过获取该特定产品的ID或名称并使用查询数据库来点击“DETAILS”链接时,能够在特定产品上打印更多细节。 我尝试将id保存在会话变量中,例如$_SESSION['id'] = $row[0],但由于我正在循环使用这些产品,因此在点击时无法获取特定产品的ID。我怎样才能做到这一点?。我因为循环而感到困惑。感谢

2 个答案:

答案 0 :(得分:2)

您可以使用GET变量为每个产品指定不同的链接 链接可以指向<a href="productpage2.php">DETAILS</a>

,而不是<a href="productpage2.php?id='.$row[0].'">DETAILS</a>

然后,在产品页面productpage2.php上,您可以从$_GET超全局数组中获取所选的ID,如下所示:

$id = $_GET['id'];

答案 1 :(得分:0)

有很多方法可以做到这一点。我可能会做类似的事情:

echo '<div class="product_info" data-product-number="' . $row[0] . '">';

然后使用JavaScript获取data-product-number属性并将其与请求一起传递。显然,一旦发出请求,您需要以某种方式在服务器端验证这一点,因为用户可以将请求中的产品编号设置为他们想要的任何内容。