/**
* 根据属性数组创建属性的表单
*
* @access public
* @param int $cat_id 分类编号
* @param int $goods_id 商品编号
* @return string
*/
function build_attr_html($cat_id, $goods_id = 0)
{
$attr = get_attr_list($cat_id, $goods_id);
$html = '
$spec = 0;
foreach ($attr AS $key => $val)
{
$html .= "
";if ($val['attr_type'] == 1 || $val['attr_type'] == 2)
{
$html .= ($spec != $val['attr_id']) ?
"[+]" :
"[-]";
$spec = $val['attr_id'];
}
$html .= "$val[attr_name]
";if ($val['attr_input_type'] == 0)
{
$html .= ' ';
}
elseif ($val['attr_input_type'] == 2)
{
$html .= '' .htmlspecialchars($val['attr_value']). '';
}
else
{
$html .= '';
$html .= '' .$GLOBALS['_LANG']['select_please']. '';
$attr_values = explode("\n", $val['attr_values']);
foreach ($attr_values AS $opt)
{
$opt = trim(htmlspecialchars($opt));
$html .= ($val['attr_value'] != $opt) ?
'' . $opt . '' :
'' . $opt . '';
}
$html .= ' ';
}
$html .= ($val['attr_type'] == 1 || $val['attr_type'] == 2) ?
$GLOBALS['_LANG']['spec_price'].' ' :
' ';
$html .= '
';}
$html .= '
';return $html;
}
get_arrt_list
function get_attr_list($cat_id, $goods_id = 0)
{
if (empty($cat_id))
{
return array();
}
// 查询属性值及商品的属性值
$sql = "SELECT a.attr_id, a.attr_name, a.attr_input_type, a.attr_type, a.attr_values, v.attr_value, v.attr_price ".
"FROM " .$GLOBALS['ecs']->table('attribute'). " AS a ".
"LEFT JOIN " .$GLOBALS['ecs']->table('goods_attr'). " AS v ".
"ON v.attr_id = a.attr_id AND v.goods_id = '$goods_id' ".
"WHERE a.cat_id = " . intval($cat_id) ." OR a.cat_id = 0 ".
"ORDER BY a.sort_order, a.attr_type, a.attr_id, v.attr_price, v.goods_attr_id";
$row = $GLOBALS['db']->GetAll($sql);
return $row;
}