sql - 在 PDO 中转换 $_GET 值
问题描述
我写了一个基本函数来加入 3 个类似的表id
。
{
$id = $_GET["id"];
$product_edit_query = $this->DB->query('
SELECT * FROM products
LEFT JOIN products_ingredients
ON products_ingredients.product_id = products.product_id
LEFT JOIN products_languages
ON products_languages.product_id = products.product_id
WHERE products.product_id = 73
');
$product_edit = $product_edit_query->fetch();
$this->smarty->assign('product_edit', $product_edit);
}
在我的请求的最后一行,我有WHERE products.product_id = 73
. 73 是硬编码的,应该是 的值$_GET["id"]
,但是我尝试的所有方法都无法在 PDO 中转换它,有什么帮助吗?
解决方案
朋友给出的解决方案:
{
$stmt = $this->DB->prepare('
SELECT * FROM products
LEFT JOIN products_ingredients
ON products_ingredients.product_id = products.product_id
LEFT JOIN products_languages
ON products_languages.product_id = products.product_id
WHERE products.product_id = :id
');
$stmt->execute([':id' => $_GET["id"]]);
$get_product_base = $stmt->fetch();
$this->smarty->assign('get_product_base', $get_product_base);
}
推荐阅读
- wordpress - 在 Wordpress 中创建 iframe 在父窗口中打开链接
- machine-learning - 连接到 Keras 中的每个时间戳
- ios - 如何在表格视图中访问多个 nib(表格视图单元格)
- proxy - Windows pod 无法解析服务
- workbench - 如何测试使用 pageContext 的 SPFX webpart?
- java - Android:启动器或其他应用程序是否启动了我的应用程序?
- macos - MacOS:可可命令行工具应用程序的静默自动更新
- php - move_uploaded_file(/Advanced Java Programming.pdf):打开流失败:权限被拒绝
- jsf - getRowData 和 getRowKey 从未执行过 LazyDataModel
- tensorflow - KeyError:“名称 'boosted_trees/QuantileAccumulator/' 指的是不在图中的操作。” 加载保存的模型时