在 oxid 中执行 SQL 查询
Performing an SQL query in oxid
我对 OXID 还很陌生。
我正在尝试仅使用 OXID 函数执行 SQL 查询。
重点是检查 $discount 是否存在于 oxVoucherSerie 的 table oxdiscount 中,如果存在,则从 oxVoucherSerie 中获取对应于该折扣的 oxid。
遗憾的是我不能使用普通的 MySQL,我只能使用氧化函数。我不知道该怎么做。
public function save_voucher($discount){
$o_voucherid = oxNew("oxVoucherSerie");
$aWhere_discount['oxdiscount'] = $discount;
$sSql = $o_voucherid->buildSelectString($aWhere_discount);
$b_exists = $o_voucher->assignRecord($sSql);
}
这告诉我折扣是否存在。但是,我不知道从折扣中取回 oxid。
我们可能需要先澄清一些措辞和变量,因为我不太确定您要实现的目标。
代金券 -(也叫"coupon")来店的顾客可以在购物篮输入voucher/coupon代码实现降价或免费产品。
代金券在商店设置-> 代金券系列中生成
折扣 - 某些类别或商品的一般降价,例如宠物配件 10%。
可以在商店设置 -> 折扣中配置折扣
好的,我更新了我的post。
你的代码运行良好,我只是稍微修改了一下。先上代码再解释:
$o_voucher = oxNew("oxVoucherSerie");
$aWhere_discount['oxdiscount'] = 25;
$sSql = $o_voucher->buildSelectString($aWhere_discount);
$o_voucher->assignRecord($sSql);
var_dump($o_voucher);
我用$o_voucher替换了$o_voucherid(没有id)
$o_voucher = oxNew("oxVoucherSerie");
给你一个 oxVoucherSeries 对象
$o_voucher->assignRecord($sSql);
不仅会告诉您是否存在具有此类折扣的优惠券系列,还会将此优惠券系列加载到 $o_voucher 中,因此您可以访问所有 ( not proted) 此优惠券系列的参数,使用 $o_voucher,例如:
$o_voucher->getId()
或 $o_voucher->oxvoucherseries__oxid->value()
获取其 oxID 或只是 var_dump($o_voucher);
查看所有对象属性
顺便说一下,如果您正在使用 OXID 4.9 进行开发,则可以使用此模块:https://marat.ws/direct-access-to-oxid-framework-functions/ 来快速评估和调试您的代码。
只需将上面的代码复制粘贴到文本区域,然后点击按钮
我对 OXID 还很陌生。
我正在尝试仅使用 OXID 函数执行 SQL 查询。
重点是检查 $discount 是否存在于 oxVoucherSerie 的 table oxdiscount 中,如果存在,则从 oxVoucherSerie 中获取对应于该折扣的 oxid。
遗憾的是我不能使用普通的 MySQL,我只能使用氧化函数。我不知道该怎么做。
public function save_voucher($discount){
$o_voucherid = oxNew("oxVoucherSerie");
$aWhere_discount['oxdiscount'] = $discount;
$sSql = $o_voucherid->buildSelectString($aWhere_discount);
$b_exists = $o_voucher->assignRecord($sSql);
}
这告诉我折扣是否存在。但是,我不知道从折扣中取回 oxid。
我们可能需要先澄清一些措辞和变量,因为我不太确定您要实现的目标。
代金券 -(也叫"coupon")来店的顾客可以在购物篮输入voucher/coupon代码实现降价或免费产品。
代金券在商店设置-> 代金券系列中生成
折扣 - 某些类别或商品的一般降价,例如宠物配件 10%。
可以在商店设置 -> 折扣中配置折扣
好的,我更新了我的post。
你的代码运行良好,我只是稍微修改了一下。先上代码再解释:
$o_voucher = oxNew("oxVoucherSerie");
$aWhere_discount['oxdiscount'] = 25;
$sSql = $o_voucher->buildSelectString($aWhere_discount);
$o_voucher->assignRecord($sSql);
var_dump($o_voucher);
我用$o_voucher替换了$o_voucherid(没有id)
$o_voucher = oxNew("oxVoucherSerie");
给你一个 oxVoucherSeries 对象
$o_voucher->assignRecord($sSql);
不仅会告诉您是否存在具有此类折扣的优惠券系列,还会将此优惠券系列加载到 $o_voucher 中,因此您可以访问所有 ( not proted) 此优惠券系列的参数,使用 $o_voucher,例如:
$o_voucher->getId()
或 $o_voucher->oxvoucherseries__oxid->value()
获取其 oxID 或只是 var_dump($o_voucher);
查看所有对象属性
顺便说一下,如果您正在使用 OXID 4.9 进行开发,则可以使用此模块:https://marat.ws/direct-access-to-oxid-framework-functions/ 来快速评估和调试您的代码。 只需将上面的代码复制粘贴到文本区域,然后点击按钮