我正在尝试在网站上展示某个类别中的产品。如果我手动输入类别编号,就可以显示一种类别的产品。但是,我不知道如何通过以下方式显示特定类别的产品:访问数据库中的数据,而无需在查询之前手动放置类别的ID,而是访问与此category_id相关的类别表的ID我的产品表。
<?php
function muestraProd($DB)
{
$productos=NULL;
$categoria_id = 1;
$sql = 'SELECT * FROM producto WHERE categoria_id = ?';
$stmt = $DB->prepare($sql);
$params = [$categoria_id,];
$stmt->execute($params);
$productos = $stmt->fetchAll();
return $productos;
}
如上面的注释所述,您可以调整函数以将类别作为函数的参数来接受,然后可以在脚本的任何位置调用和使用它:
<?php
function muestraProd($id, $DB)
{
if(empty($id))
return null;
$stmt = $DB->prepare('SELECT * FROM producto WHERE categoria_id = ?');
$stmt->execute([$id]);
return $stmt->fetchAll();
}
现在您的函数接受了id
作为参数,只要您在脚本中包含此函数,就可以在任何地方使用它。在表单上提交:
# This will insert the id assuming it is submitted in a form
$prod = muestraProd(($_POST['id'])?? false, $DB);
如果在查询中(如注释中所述)https://www.emample.com?id=1
:
$prod = muestraProd(($_GET['id'])?? false, $DB);
然后,您可以手动进行以下操作:
$prod = muestraProd(1, $DB);
这些是最常见的方法。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句