我需要一些关于以下问题的帮助。我会给出整个场景。它不应该是太多的工作,但我不能让它100%工作。
我的所有产品都已加载到类别页面中。现在,我有一个自定义字段“序列号”(virtuemart__custom_id = 2)。假设另一个自定义字段是“Score”(virtuemart_custom_id = 3),该值可以是任何整数值。
不同的产品可以具有相同的序列号。
所以我们假设我们有这种情况:
<table>
<tr>
<th>Seq #</th>
<th>Product</th>
<th>Score</th>
<th>Cart Button</th>
</tr>
<?php foreach ($product->virtuemart_product_id){
<tr>
<td>123456</td>
<td>Shoes</td>
<td>50</td>
<td>"Addtocart-button"</td>
</tr>
<tr>
<td>123456</td>
<td>Shirt</td>
<td>55</td>
<td>"Addtocart-button"</td>
</tr> // THE CODE BELOW SHOULD BE HERE, I just seperated it to make it easier to understand.
<?php } ?>
</table>
因此,我需要为分数较高的产品禁用“Addtocart-button”; ,在这种情况下为“衬衫”产品。
这是我写的代码。它位于“foreach($ this-&gt;产品为$ products){}”元素内:
<?php
$db = JFactory::getDbo();
$sequence = "SELECT customfield_value FROM `jos_virtuemart_product_customfields` WHERE virtuemart_custom_id=2";
$score = "SELECT customfield_value FROM `jos_virtuemart_product_customfields` WHERE virtuemart_custom_id=3";
$producttest = "SELECT virtuemart_product_id FROM `jos_virtuemart_product_customfields`";
if($sequence==$sequence && $score>=$score){ ?>
<script>
jQuery(".addtocart-button").css("display", "none");
</script>
<?php } } ?>
有没有办法检查数据库中列的重复项?我需要为每个“产品ID”检查“序列号”的customfield_value。然后我需要确定哪个重复值具有最高的“分数”。
最终结果是对于分数较高的产品禁用“addtocart-button”, IF 序列号相同且virtmart_product_id不同。
编辑:我忘了提到目前它正在禁用addtocart按钮,但是对于每个加载的产品都是如此。它应仅适用于序列号重复且分数最高的那些。