Пишу если можно так сказать клона одной браузерной игры, и не спрашивайте зачем.
Интересует как правильно отображаться вещи персонажа в инвентаре/анкете, то есть как производить выборку
Все вещи персонажей хранятся в таблице inv где есть тип вещи и ее id (для поиска в таблице вещей), слот вещи, так же одета вещь или нет.
если слот занят то выводим одну строке, а если пуст то другую, вообщем как оптимизировать код? что бы обойтись без кучи кода, вот пример кода для проверки одной вещи =)
$sql_helm = mysql_query("SELECT * FROM inv WHERE owner='$user' AND obj_slot='helm' AND active=1");
$helm = mysql_fetch_array($sql_helm);
if($helm){
$id = $take_items[id];
$obj_type = $take_items[obj_type];
$obj_id = $take_items[obj_id];
$obj_slot = $take_items[obj_slot];
$take_obj_type_id = mysql_query('SELECT * FROM '.$obj_type.' WHERE id='.$obj_id.'');
$display_items = mysql_fetch_array($take_obj_type_id);
$img = $display_items[img];
$name = $display_items[name];
print('<a onmouseover="tooltip(this,\''.$name.'\')" onmouseout="hide_info(this)" href="/pers.php?act=unwear&slot='.$obj_slot.'&id='.$id.'"><li class=\'slot slot-'.$n.' '.$st.' tooltip\'><img src='.$img.'></li></a>');
}else{
print("<li class='slot slot-1 helmet helmet-empty tooltip'></li>");
}
и так нужно 30 раз, понимаю что можно через массив, но все попытки прошли безрезультатно
где так так думал (без кода, только логика =) )
выбираем данные с таблицы где активность = 1
понадобиться 3 переменные id вещи в инвентаре, тип вещи и ее id в соответствующей таблице, что бы получить, х-ки, имя, и т.д.
после каждого прохождения циклом по таблице мы сохраняем переменные с соответствующими данными и выводим вещь через код указанные выше, если не все слоты были заняты то для них выводим "<li class='slot slot-1 helmet helmet-empty tooltip'></li> где вместо helmet будет название вещи, может кто помочь?Добавлено (21.11.2011, 02:20)
---------------------------------------------
хотя кажется и тут проблемы, тогда если можно предложите решение для моего случая
Добавлено (21.11.2011, 02:25)
---------------------------------------------
куча кода, от которого нету толку