function attribute_manager() {
$checkattr = $this->connection->query("SELECT * FROM attribute_grup");
while ($attrs = $checkattr->fetch_object()) {
$id = $attrs->att_gr_id;
$checkattrs = $this->connection->query("SELECT * FROM product_attribute WHERE att_group = $id");
while ($values = $checkattrs->fetch_object()) {
$valuez .= $values->att_name.', ';
}
$linkz_header = '<li class="table_header">
<div class="options_column"><strong>Attribute Titel</strong></div>
<div class="options_column">Optionen</div>
<div class="options_column">Werte</div>
</li>';
$linkz .= '<li>
<div class="options_column"><strong>'.$attrs->att_gr_name.'</strong></div>
<div class="options_column">
<a style="color:green;" href="?seite=shop&act=edit&id='.$products->id.'">Bearbeiten</a>
<a style="color:red;" href="?seite=shop&act=delete&id='.$products->id.'">Löschen</a>
</div>
<div class="options_column">'.$valuez.'</div>
</li>';
}
return '<ul id="posts_menu">'.$linkz_header.$linkz.' </ul>';
}
}
这是结果,因为您可以看到FARBE的值与Größe的值结合在一起:
解决此问题的正确方法是什么?
最佳答案
您需要在每次迭代中重置$valuez
的值。
while ($attrs = $checkattr->fetch_object()) {
$valuez = ""; // Add this line
$id = $attrs->att_gr_id;
关于php - 值在下一个循环中重复,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17225788/