winter37rus 1 Опубликовано 4 сентября, 2015 в таблице items нет только эти item_id owner_id item_type amount location slot enchant Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
L2Banners 664 Опубликовано 4 сентября, 2015 Даже не знаю тогда, получается object_это уникальный ид предмета и запросы идут к нему, а в твоем случае его как бы нет Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
winter37rus 1 Опубликовано 4 сентября, 2015 object_это obj_id персонажа тоесть 268478223 это перс на котором лежат шмотки Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
L2Banners 664 Опубликовано 4 сентября, 2015 И у тебя его получается нет... Это порнография конечно, но попробуй так что выдаст /************************* * Add Item *************************/ $l2_content .= " <div align='left'> <form action='{$_url}=chars&action=character&lid={$lid}&sid={$sid}&id={$charID}' method='post'> Добавить персонажу предмет <b>Item ID</b>: <input type='text' name='AddItemId' style='width: 70px;'> <b>Количество:</b> <input type='text' name='AddItemCount' style='width: 70px;'> <b>Заточка:</b> <input type='text' name='AddItemEnchant' value='0' style='width: 70px;'> <b><i>одиночный</i></b> <input type='checkbox' value='1' name='AddItemSingle' title='Не складывается в кучу, а добавляется отдельно'> <input type='submit' value='Добавить' name='AddItem' class='button'></form> </div>"; if ( isset($_POST["AddItem"]) ) { $AddItemId = intval( $_POST["AddItemId"] ); $AddItemCount = intval( $_POST["AddItemCount"] ); $AddItemEnchant = !empty( $_POST["AddItemEnchant"] ) ? intval( $_POST["AddItemEnchant"] ):0; $AddItemSingle = intval( $controller->set("AddItemSingle") ); if ( empty($AddItemId) or $AddItemId == 0 ) $l2_content .= "<div class='error'>Введите ID предмета</div>"; elseif ( empty($AddItemCount) or $AddItemCount == 0 ) $l2_content .= "<div class='error'>Введите количество предметов</div>"; elseif ( $char_data["online"] == 1 ) $l2_content .= "<div class='error'>Персонаж находится в игре</div>"; else { if ( $AddItemSingle == "0" ) { $add_query = $gdb[$sid]->query( "SELECT `owner_id`,`amount` FROM `items` WHERE `owner_id`='{$charID}' AND `item_id`='{$AddItemId}' AND `loc`='INVENTORY'" ); if ( $gdb[$sid]->num_rows($add_query) > 0 ) { $add_data = $gdb[$sid]->fetch( $add_query ); $gdb[$sid]->query( "UPDATE `items` SET `amount`=`amount`+{$AddItemCount} WHERE `owner_id`='{$charID}' AND `owner_id`='{$add_data["owner_id"]}'" ); } else { list( $max_obj ) = $gdb[$sid]->fetch( $gdb[$sid]->query("SELECT MAX(`owner_id`)+1 FROM `items`") ); $gdb[$sid]->query( "INSERT INTO `items` SET `owner_id`='{$charID}',`owner_id`='{$max_obj}',`item_id`='{$AddItemId}',`amount`={$AddItemCount},`enchant`='{$AddItemEnchant}',`loc`='INVENTORY'" ); } } else { for ( $i = 0; $i < $AddItemCount; $i++ ) { list( $max_obj ) = $gdb[$sid]->fetch( $gdb[$sid]->query("SELECT MAX(`owner_id`)+1 FROM `items`") ); $gdb[$sid]->query( "INSERT INTO `items` SET `owner_id`='{$charID}',`owner_id`='{$max_obj}',`item_id`='{$AddItemId}',`amount`='1',`enchant`='{$AddItemEnchant}',`loc`='INVENTORY'" ); } } if ( $gdb[$sid]->affected() > 0 ) { $l2_content .= "<div class='no_error'>Персонажу был добавлен предмет <b>ID: {$AddItemId} ({$AddItemCount}шт.)[заточка: +{$AddItemEnchant}]</b></div>"; } else { $l2_content .= "<div class='error'>Ошибка базы данных</div>"; } } $l2_content .= "<center><a href='{$_url}=chars&action=character&lid={$lid}&sid={$sid}&id={$charID}'><b>Назад</b></a></center><br>"; } /************************* * Delete inventory *************************/ if ( isset($_REQUEST["delete_items"]) ) { $gdb[$sid]->SuperQuery( $qList[$vgs]["delItemByOwner"], array("charID" => $charID) ); $l2_content .= "<div class='error'> Удалено записей: ".$gdb[$sid]->affected()."</div><br>\n"; } /************************* * Delete item *************************/ if ( isset($_REQUEST["do"]) && $_REQUEST["do"] == "del_item" ) { $owner_id = intval( $_REQUEST["owner_id"] ); $gdb[$sid]->SuperQuery( $qList[$vgs]["delItemByObjectID"], array("objectID" => $owner_id) ); $l2_content .= "<div class='error'> Удалено записей: ".$gdb[$sid]->affected()."</div><br>\n"; } /************************* * Edit item *************************/ if ( isset($_REQUEST["do"]) && $_REQUEST["do"] == "edit_item" ) { $edit_owner_id = intval( $_REQUEST["id"] ); $edit_owner_id = intval( $_REQUEST["owner_id"] ); $item_data = $gdb[$sid]->SuperFetchArray( $qList[$vgs]["getItemByObjectID"], array("objectID" => $edit_owner_id) ); //$item_data = $gdb[$sid]->fetch($item_select); $l2_content .= " <form method='post' action='{$_url}=chars&action=character&lid={$lid}&sid={$sid}&do=update_item&id={$edit_owner_id}&owner_id={$edit_owner_id}'> <b>Edit Item</b> - ID {$item_data["item_id"]}<br> <b>Count</b>: <input type='text' value='{$item_data["count"]}' name='item_count' style='width: 50px;'> <b>Enchant</b>: <input type='text' value='{$item_data["enchant_level"]}' name='item_enchant' style='width: 50px;'> <input type='submit' value='Edit'><hr>"; } /************************* * Update item *************************/ if ( isset($_REQUEST["do"]) && $_REQUEST["do"] == "update_item" ) { $update_owner_id = intval( $_REQUEST["id"] ); $update_owner_id = intval( $_REQUEST["owner_id"] ); $update_count = intval( $_REQUEST["item_count"] ); $update_enchant = intval( $_REQUEST["item_enchant"] ); $update_count = ( $update_count > 0 ) ? $update_count:1; $gdb[$sid]->SuperQuery( $qList[$vgs]["setItem"], array("count" => $update_count, "enchant" => $update_enchant, "objectID" => $update_owner_id) ); if ( $gdb[$sid]->affected() ) { $l2_content .= "<div class='no_error'>Предмет успешно обновлен</div>\n"; } else { $l2_content .= "<div class='error'>Ошибка при обновлении</div>\n"; } } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
winter37rus 1 Опубликовано 4 сентября, 2015 SELECT `amount` AS `count`, `enchant` AS `enchant_level`,`item_type` AS `item_id` FROM `items` WHERE `object_id`='0' Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
L2Banners 664 Опубликовано 4 сентября, 2015 А при добавлении? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
winter37rus 1 Опубликовано 4 сентября, 2015 Ошибка MySQL! ========================MySQL вернул ошибку: Unknown column 'loc' in 'where clause' Номер ошибки: 1054 SELECT `owner_id`,`amount` FROM `items` WHERE `owner_id`='268478223' AND `item_id`='57' AND `loc`='INVENTORY' Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
L2Banners 664 Опубликовано 4 сентября, 2015 У меня пока недостаточно знаний что бы это исправить, да и сам разраб люцеры уже 3 месяца мусолит эту тему обвиняя стресса в неадекватности, если у тебя лицензия можно обратится к стрессу за те же деньги он все сделает на ура. 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
winter37rus 1 Опубликовано 4 сентября, 2015 У меня пока недостаточно знаний что бы это исправить, да и сам разраб люцеры уже 3 месяца мусолит эту тему обвиняя стресса в неадекватности, если у тебя лицензия можно обратится к стрессу за те же деньги он все сделает на ура. ясно.спасибо за помощь! хоть и неполучилось но все равно спасибо за отклик! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
winter37rus 1 Опубликовано 4 сентября, 2015 вот код добавления /************************* * Add Item *************************/ $l2_content .= " <div align='left'> <form action='{$_url}=chars&action=character&lid={$lid}&sid={$sid}&id={$charID}' method='post'> Добавить персонажу предмет <b>Item ID</b>: <input type='text' name='AddItemId' style='width: 70px;'> <b>Количество:</b> <input type='text' name='AddItemCount' style='width: 70px;'> <b>Заточка:</b> <input type='text' name='AddItemEnchant' value='0' style='width: 70px;'> <b><i>одиночный</i></b> <input type='checkbox' value='1' name='AddItemSingle' title='Не складывается в кучу, а добавляется отдельно'> <input type='submit' value='Добавить' name='AddItem' class='button'></form> </div>"; if ( isset($_POST["AddItem"]) ) { $AddItemId = intval( $_POST["AddItemId"] ); $AddItemCount = intval( $_POST["AddItemCount"] ); $AddItemEnchant = !empty( $_POST["AddItemEnchant"] ) ? intval( $_POST["AddItemEnchant"] ):0; $AddItemSingle = intval( $controller->set("AddItemSingle") ); if ( empty($AddItemId) or $AddItemId == 0 ) $l2_content .= "<div class='error'>Введите ID предмета</div>"; elseif ( empty($AddItemCount) or $AddItemCount == 0 ) $l2_content .= "<div class='error'>Введите количество предметов</div>"; elseif ( $char_data["online"] == 1 ) $l2_content .= "<div class='error'>Персонаж находится в игре</div>"; else { if ( $AddItemSingle == "0" ) { $add_query = $gdb[$sid]->query( "SELECT `owner_id`,`amount` FROM `items` WHERE `owner_id`='{$charID}' AND `item_id`='{$AddItemId}' AND `location`='INVENTORY'" ); if ( $gdb[$sid]->num_rows($add_query) > 0 ) { $add_data = $gdb[$sid]->fetch( $add_query ); $gdb[$sid]->query( "UPDATE `items` SET `amount`=`amount`+{$AddItemCount} WHERE `owner_id`='{$charID}' AND `owner_id`='{$add_data["owner_id"]}'" ); } else { list( $max_obj ) = $gdb[$sid]->fetch( $gdb[$sid]->query("SELECT MAX(`owner_id`)+1 FROM `items`") ); $gdb[$sid]->query( "INSERT INTO `items` SET `owner_id`='{$charID}',`owner_id`='{$max_obj}',`item_id`='{$AddItemId}',`amount`={$AddItemCount},`enchant`='{$AddItemEnchant}',`location`='INVENTORY'" ); } } else { for ( $i = 0; $i < $AddItemCount; $i++ ) { list( $max_obj ) = $gdb[$sid]->fetch( $gdb[$sid]->query("SELECT MAX(`owner_id`)+1 FROM `items`") ); $gdb[$sid]->query( "INSERT INTO `items` SET `owner_id`='{$charID}',`owner_id`='{$max_obj}',`item_id`='{$AddItemId}',`amount`='1',`enchant`='{$AddItemEnchant}',`location`='INVENTORY'" ); } } if ( $gdb[$sid]->affected() > 0 ) { $l2_content .= "<div class='no_error'>Персонажу был добавлен предмет <b>ID: {$AddItemId} ({$AddItemCount}шт.)[заточка: +{$AddItemEnchant}]</b></div>"; } else { $l2_content .= "<div class='error'>Ошибка базы данных</div>"; } } $l2_content .= "<center><a href='{$_url}=chars&action=character&lid={$lid}&sid={$sid}&id={$charID}'><b>Назад</b></a></center><br>"; } а вот ошибка (типа повторная строка!а на что ее менять тогда?или удалить?) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
winter37rus 1 Опубликовано 4 сентября, 2015 проблему частично решил стал добавлять вещи Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
winter37rus 1 Опубликовано 4 сентября, 2015 проблему частично решил стал добавлять вещи нет не решил! в админке пишет что добавлено!и отображение есть вещей. захожу в игру а у перса лвл 1 инвентарь вообще пуст даже что было все пропало.вообщем все сбросилось! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
se1dhe 501 Опубликовано 4 сентября, 2015 Никого не смутил object_id и owner_id? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
SmokiMo 892 Опубликовано 4 сентября, 2015 Никого не смутил object_id и owner_id? Да я уже в другой тебе ответил и тут отвечу всем собравшимся тут "Специалистам" Зачем быть на столько...... Ты если английский технический не знаешь, ты хотя бы используй переводчик, включи логики немного! MySQL вернул ошибку: Unknown column 'object_id' in 'field list' Далее читай как делаются SQL запросы http://codingcraft.ru/sql_queries.php Затем смотри свой запрос в базу SELECT `object_id`,`count` FROM `items` WHERE `owner_id`='268478795' AND `item_id`='57' AND `loc`='INVENTORY' И в конце концов смотри снова на ошибку которую тебе выдает и на таблицу в которую обращается. Там же все элементарно как 2х2 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
winter37rus 1 Опубликовано 4 сентября, 2015 проще бы изменили все как надо. и заработали денежку.чем учить!я для того и ищу человека кто сделает за деньги!чтоб не разбираться а сразу сделать! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
SmokiMo 892 Опубликовано 4 сентября, 2015 проще бы изменили все как надо. и заработали денежку.чем учить!я для того и ищу человека кто сделает за деньги!чтоб не разбираться а сразу сделать! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
TIESTO 135 Опубликовано 4 сентября, 2015 Пипец! Ну и сборка! не проше купить другую сборку (клиентку) у норм розрабов! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты