Доброе. Проблема такая. Создаю БД.
| Код | CREATE TABLE `item_db` ( `id` smallint(5) unsigned NOT NULL default '0', `name_english` varchar(50) NOT NULL default '', `name_japanese` varchar(50) NOT NULL default '', `type` tinyint(2) unsigned NOT NULL default '0', `price_buy` mediumint(10) unsigned default NULL, `price_sell` mediumint(10) unsigned default NULL, `weight` smallint(5) unsigned NOT NULL default '0', `attack` smallint(3) unsigned default NULL, `defence` tinyint(3) unsigned default NULL, `range` tinyint(2) unsigned default NULL, `slots` tinyint(2) unsigned default NULL, `equip_jobs` int(12) unsigned default NULL, `equip_upper` tinyint(8) unsigned default NULL, `equip_genders` tinyint(2) unsigned default NULL, `equip_locations` smallint(4) unsigned default NULL, `weapon_level` tinyint(2) unsigned default NULL, `equip_level` tinyint(3) unsigned default NULL, `refineable` tinyint(1) unsigned default NULL, `view` tinyint(3) unsigned default NULL, `script` text, `equip_script` text, `unequip_script` text, PRIMARY KEY (`id`) );
|
Добавляю много строк. Привожу ту с которой проблемы
| Код | REPLACE INTO `item_db` VALUES (2114,'Stone_Buckler','Stone Buckler',5,NULL,10,1500,NULL,3,NULL,1,0xFFFFFFFE,7,2,32,NULL,65,1,2,' bonus2 bSubSize,2,5; if (isequipped(2353,5122)) { bonus bStr,2; bonus bDef,5; bonus bMdef,5; if(BaseClass == Job_Swordman) bonus bDef,6; } ',NULL,NULL);
|
Теперь достаю нужное мне значение и по определенным причинам мне нужно узнать остаток этого числа от деления на 2.
| Код | mysql_connect("localhost","root",""); mysql_select_db("ro"); $row=mysql_fetch_row(mysql_query("SELECT `equip_jobs` FROM `item_db` WHERE `id`=2114")); echo $row[0]."<br>"; echo $row[0] % 2;
|
На выходе получаю:
4294967294 1
Проблема такая. 0xFFFFFFFE(16) = 4294967294(10). А остаток от деления 4294967294 на 2 никак не единица. Помогите решить проблему. |