Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- $host = "localhost";
- $user = "root";
- $password = "root";
- $db_name = "temp_char";
- $link = mysql_connect($host, $user, $password) or die("Сервер базы данных не доступен");
- $db = mysql_select_db($db_name) or die("База данных не доступна");
- function CheckCountCharacters($account)
- {
- $r = mysql_query("SELECT COUNT(*) FROM characters WHERE account = ".$account) or die("Ошибка при выполнении запроса: ".mysql_error());
- $row = mysql_fetch_row($r);
- if ($row[0] > 9)
- die("У вас на аккаунте больше 9 персонажей. Для продолжения, вы должны сделать их количество не больше 9.");
- }
- function dump_sql($dump_dir, $guid, $realm)
- {
- $table_name =
- array(
- 0 => "characters",
- 1 => "character_queststatus",
- 2 => "character_reputation",
- 3 => "character_spell",
- 4 => "character_spell_cooldown",
- 5 => "character_action",
- 6 => "character_aura",
- 7 => "character_homebind",
- 8 => "character_skills",
- 9 => "character_inventory",
- 10 => "item_instance",
- 11 => "character_pet",
- 12 => "character_gifts",
- 13 => "pet_spell",
- 14 => "pet_spell_cooldown",
- 15 => "pet_aura",
- 16 => "mail",
- 17 => "mail_items",
- 18 => "character_glyphs");
- $dump_tables =
- array(
- 0 => "SELECT * FROM characters WHERE guid = ",
- 1 => "SELECT * FROM character_queststatus WHERE guid = ",
- 2 => "SELECT * FROM character_reputation WHERE guid = ",
- 3 => "SELECT * FROM character_spell WHERE guid = ",
- 4 => "SELECT * FROM character_spell_cooldown WHERE guid = ",
- 5 => "SELECT * FROM character_action WHERE guid = ",
- 6 => "SELECT * FROM character_aura WHERE guid = ",
- 7 => "SELECT * FROM character_homebind WHERE guid = ",
- 8 => "SELECT * FROM character_skills WHERE guid = ",
- 9 => "SELECT * FROM character_inventory WHERE guid = ",
- 10 => "SELECT * FROM item_instance WHERE owner_guid = ",
- 11 => "SELECT * FROM character_pet WHERE owner = ",
- 12 => "SELECT * FROM character_gifts WHERE guid = ",
- 13 => "SELECT * FROM pet_spell WHERE guid IN (SELECT id FROM character_pet WHERE owner = ",
- 14 => "SELECT * FROM pet_spell_cooldown WHERE guid IN (SELECT id FROM character_pet WHERE owner = ",
- 15 => "SELECT * FROM pet_aura WHERE guid IN (SELECT id FROM character_pet WHERE owner = ",
- 16 => "SELECT * FROM mail WHERE receiver = ",
- 17 => "SELECT * FROM mail_items WHERE receiver = ",
- 18 => "SELECT * FROM character_glyphs WHERE guid = ");
- $count = 17;
- if ($realm == "1") // 0 - TBC;
- $count = 18; // 1 - WotLK
- $full_dump = "";
- for ($i = 0; $i <= $count; $i++)
- {
- if ($i > 12 && $i < 16)
- $rows = $dump_tables[$i].$guid.");";
- else $rows = $dump_tables[$i].$guid.";";
- $r = mysql_query($rows) or die("Ошибка при выполнении запроса: ".mysql_error());
- while($row = mysql_fetch_row($r))
- {
- $query = "";
- foreach ($row as $field)
- {
- if (is_null($field))
- $field = "NULL";
- else
- $field = "'".mysql_escape_string($field)."'";
- if ($query == "")
- $query = $field;
- else
- $query = $query.', '.$field;
- }
- $full_dump = $full_dump."INSERT INTO `".$table_name[$i]."` VALUES (".$query.");\n";
- }
- }
- $fp = fopen($dump_dir."/"."player_guid-".$guid.".sql", "a");
- if ($fp)
- {
- fwrite ($fp, $full_dump);
- fclose ($fp);
- }
- mysql_close($link);
- }
- CheckCountCharacters("2");
- dump_sql('.', "6", "0"); // 0 - TBC 1 - Wotlk
- ?>
Add Comment
Please, Sign In to add comment