Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Добавление своего SQL'a в БД wow

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Для начинающих] >> Добавление своего SQL'a в БД wow
Имя
Сообщение << Старые топики   Новые топики >>
Добавление своего SQL'a в БД wow - 2008-12-19 23:39:25.593333   
MuTaToR

Сообщений: 55
Оценки: 0
Присоединился: 2008-05-26 11:48:42.893333
Вообщем в Локальной сети есть сервер вова, я знаю 1 код который работает с базой,&lt;?php &nbsp;$CacheQ=array();$CurQ=array(); &nbsp;$CacheQCom=array();$CurQCom=array(); &nbsp;$CacheC=array();$CurC=array(); &nbsp;$CacheGO=array();$CurGO=array(); &nbsp;$CacheI=array();$CurI=array(); &nbsp;$CacheS=array();$CurS=array(); &nbsp;$CacheRel=array();$CurRel=array(); &nbsp;$CacheInv=array();$CurInv=array(); &nbsp;$CacheL=array();$CurL=array(); &nbsp;$CacheEx=array();$CurEx=array(); function Error($s){ &nbsp;global $mess,$buffer; &nbsp;if(!$buffer){echo("&lt;tr&gt;&lt;td class=error&gt;Ошибка: ".$s."&lt;/td&gt;&lt;/tr&gt;");} &nbsp; else {$mess.="&lt;tr&gt;&lt;td class=error&gt;Ошибка: ".$s."&lt;/td&gt;&lt;/tr&gt;";} } function Debug($s){ global $debug,$mess,$buffer; &nbsp;if(!$buffer){if($debug){echo("&lt;tr&gt;&lt;td class=debug&gt;DEBUG: ".$s."&lt;/td&gt;&lt;/tr&gt;");}} &nbsp; else {if($debug){$mess.="&lt;tr&gt;&lt;td class=debug&gt;DEBUG: ".$s."&lt;/td&gt;&lt;/tr&gt;";}} } function Warning($s){ &nbsp;global $mess,$showWarning,$buffer; &nbsp;if(!$buffer){if ($showWarning){echo("&lt;tr&gt;&lt;td class=warning&gt;Замечание: ".$s."&lt;/td&gt;&lt;/tr&gt;");}} &nbsp; else {if ($showWarning){$mess.="&lt;tr&gt;&lt;td class=warning&gt;Замечание: ".$s."&lt;/td&gt;&lt;/tr&gt;";}} } function Info($s){ &nbsp;global $mess,$buffer; &nbsp;if(!$buffer){echo("&lt;tr&gt;&lt;td class=info&gt;".$s."&lt;/td&gt;&lt;/tr&gt;");} &nbsp; else {$mess.="&lt;tr&gt;&lt;td class=info&gt;".$s."&lt;/td&gt;&lt;/tr&gt;";} } //*********************************** //Проверка квеста //*********************************** &nbsp;function CheckQuest($entry){ &nbsp; global $CacheQ,$CurQ; &nbsp; $Ok=true; &nbsp; Info("Проверка квеста ".$entry.":"); //Если уже проверли, то пропуск &nbsp; if (isset($CacheQ[$entry])){ &nbsp;&nbsp;&nbsp;&nbsp; if&nbsp; ($CacheQ[$entry]) {Info("Проверен ранее, статус - ОК");} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else {Error("Проверен ранее, статус - Обнаружена ошибка");} &nbsp; &nbsp; return $CacheQ[$entry]; &nbsp; } &nbsp; Info("&lt;table&gt;"); //Защита от зацикливания &nbsp; if (isset($CurQ[$entry])){ &nbsp; &nbsp;Info("&lt;/table&gt;"); &nbsp; &nbsp;Warning("Возможно зацикливание, отмена повторной проверки"); &nbsp; &nbsp;return true; &nbsp; } &nbsp;&nbsp; else {$CurQ[$entry]=1;} //Проверка возможности взятия квеста &nbsp; if (!CheckRelation($entry)){$Ok=false;} //Проверка возможности завершения квеста &nbsp; if (!CanCompleteQuest($entry)){$Ok=false;} //Проверка возможности сдачи квеста &nbsp; if (!CheckInvolved($entry)){$Ok=false;} &nbsp; unset($CurQ[$entry]); &nbsp; Info("&lt;/table&gt;"); &nbsp; if ($Ok){Info("Квест работает");} &nbsp;&nbsp; else {Error("Квест не работает");} &nbsp; $CacheQ[$entry]=$Ok; &nbsp; return $Ok; &nbsp;} //********************************** //Проверка возможности взятия квеста //********************************** &nbsp;function CheckRelation($entry){ &nbsp; global $CacheRel,$CurRel; &nbsp; Info("Проверка возможности взятия квеста (ID: ".$entry."):"); //Если ранее проверяли то пропускаем проверку &nbsp; if (isset($CacheRel[$entry])){ &nbsp;&nbsp;&nbsp;&nbsp; if&nbsp; ($CacheRel[$entry]) {Info("Проверена ранее, статус - ОК");} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else {Error("Проверено ранее, статус - Обнаружена ошибка");} &nbsp;&nbsp;&nbsp;&nbsp; return $CacheRel[$entry]; &nbsp; } &nbsp; Info("&lt;table&gt;"); //Защита от зацикливания &nbsp; if (isset($CurRel[$entry])){ &nbsp; &nbsp;Warning("Возможно зацикливание, отмена повторной проверки"); &nbsp;Info("&lt;/table&gt;"); &nbsp;&nbsp; &nbsp;return true; &nbsp; } &nbsp;&nbsp; else {$CurRel[$entry]=1;} &nbsp; $Ok=true;$notId=true; //Проверка существования квеста &nbsp; $result = mysql_query("SELECT * FROM quest_template WHERE entry=".$entry) or die("Не верный запрос: " . mysql_error()); &nbsp; $row=mysql_fetch_array($result); &nbsp; mysql_free_result($result); &nbsp; if ($row){ //Поиск в creature_questrelation &nbsp; &nbsp;Debug("Поиск в creature_questrelation"); &nbsp; &nbsp;$result = mysql_query("SELECT * FROM creature_questrelation WHERE quest=".$entry) or die("Не верный запрос: " . mysql_error()); &nbsp; &nbsp;while ($row=mysql_fetch_array($result)){ &nbsp;&nbsp; &nbsp;&nbsp;$notID=false; &nbsp;&nbsp; &nbsp;&nbsp;Info("Квест (ID: ".$entry.") берется у моба (ID: ".$row['id'].")"); //Проверка моба &nbsp;&nbsp; &nbsp;&nbsp;if (!CanFindCreature($row['id'],1)){$Ok=false;} &nbsp;&nbsp; &nbsp;&nbsp;$result2 = mysql_query("SELECT * FROM creature_template WHERE entry=".$row['id']) or die("Не верный запрос: " . mysql_error()); &nbsp;&nbsp; &nbsp;&nbsp;if ($row2=mysql_fetch_array($result2)){ &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;Debug("creature_template.npcflag = ".$row2['npcflag']); //Проверка флага &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;if (!($row2['npcflag']&amp;2)){$Ok=false;Error("У моба (ID: ".$row['id'].") не стоит флаг квестгивера(2)");} &nbsp;&nbsp; &nbsp;&nbsp;} &nbsp;&nbsp; &nbsp;&nbsp; else {$Ok=false;Error("Моб (ID: ".$row['id'].") отсутствует в таблице creature_template");} &nbsp;&nbsp; &nbsp;&nbsp;mysql_free_result($result2); &nbsp; &nbsp;} &nbsp; &nbsp;mysql_free_result($result); //------------------------------------------------ //Поиск в gameobject_questrelation &nbsp; &nbsp;Debug("Поиск в gameobject_questrelation"); &nbsp; &nbsp;$result = mysql_query("SELECT * FROM gameobject_questrelation WHERE quest=".$entry) or die("Не верный запрос: " . mysql_error()); &nbsp; &nbsp;while ($row=mysql_fetch_array($result)){ &nbsp;&nbsp; &nbsp;&nbsp;$notID=false; &nbsp;&nbsp; &nbsp;&nbsp;Info("Квест (ID: ".$entry.") начинает ГО (ID: ".$row['id'].")"); //Проверка ГО &nbsp;&nbsp; &nbsp;&nbsp;if (!CanFindGO($row['id'],1)){$Ok=false;} &nbsp;&nbsp; &nbsp;&nbsp;$result2 = mysql_query("SELECT * FROM gameobject_template WHERE entry=".$row['id']) or die("Не верный запрос: " . mysql_error()); &nbsp;&nbsp; &nbsp;&nbsp;if ($row2=mysql_fetch_array($result2)){ &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;Debug("Type = ".$row2['type']." Data1 = ".$row2['data1']); //Проверка типа ГО и sound1 &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;if ($row2['type']!=2){$Ok=false;Error("ГО (ID ".$row2['entry'].") имеет тип, отличный от квестгивера(2)");} &nbsp;&nbsp; &nbsp;&nbsp;} &nbsp;&nbsp; &nbsp;&nbsp; else {$Ok=false;Error("ГО (ID: ".$row['id'].") отсутствует в таблице gameobject_template");} &nbsp;&nbsp; &nbsp;&nbsp;mysql_free_result($result2); &nbsp; &nbsp;} &nbsp; &nbsp;mysql_free_result($result); //-------------------------------------------------- //Поиск в item_template &nbsp; &nbsp;Debug("Поиск в item_template"); &nbsp; &nbsp;$result = mysql_query("SELECT * FROM item_template WHERE startquest=".$entry) or die("Не верный запрос: " . mysql_error()); &nbsp; &nbsp;while ($row=mysql_fetch_array($result)){ &nbsp;&nbsp; &nbsp;&nbsp;$notID=false; &nbsp;&nbsp; &nbsp;&nbsp;Info("Квест (ID: ".$entry.") начинает предмет ".$row['name']." (ID: ".$row['entry'].")"); &nbsp;&nbsp; &nbsp;&nbsp;Debug("Entry=".$row['entry']."; Flags=".$row['Flags']."; class=".$row['class'].")"); //Проверка класса и флагов &nbsp;&nbsp; &nbsp;&nbsp;if (($row['class']!=12) and (!($row['Flags']&amp;2048))){ &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;Warning("Предмет ".$row['entry']." имеет класс отличный от Quest(12) или не установлен флаг Quests and keys(2048)"); &nbsp;&nbsp; &nbsp;&nbsp;} //Проверка предмета &nbsp;&nbsp; &nbsp;&nbsp;if (!CanTakeItem($row['entry'],1)){$Ok=false;} &nbsp; &nbsp;} &nbsp; &nbsp;mysql_free_result($result); &nbsp; &nbsp;if ($notID){$Ok=false;Error("Не найдены данные о дающих квест");} //---------------------------------------------------- //Проверка требований наличия или прохождения предыдущего квеста &nbsp;&nbsp;&nbsp; if ($row['PrevQuestId']!=0){ &nbsp; &nbsp;&nbsp;Debug("PrevQuestID=".$row['PrevQuestId']); &nbsp; &nbsp;&nbsp;if ($row['PrevQuestId']&gt;0){ //Предыдущий квест должен быть завершен &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Чтобы взять квест (ID: ".$entry.") необходимо завершить квест (ID:".$row['PrevQuestId'].")"); &nbsp; &nbsp;&nbsp;&nbsp;if (!CheckQuest($row['PrevQuestId'])){$Ok=false;} //Проверка эксклюзивной группы квеста &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result = mysql_query("SELECT ExclusiveGroup FROM quest_template WHERE entry=".$row['PrevQuestId']) or die("Не верный запрос: " . mysql_error()); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $row2=mysql_fetch_array($result); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mysql_free_result($result); //Если эксклюзивная группа меньше нуля, то необходимо пройти все квесты &nbsp;&nbsp;&nbsp;if ($row2[0] &amp;&amp; $row2[0]&lt;0){ &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Debug("Проверка эксклюзивной группы квеста (ID:".$row['PrevQuestId']."); ExclusiveGroup=".$row2[0]); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Чтобы взять квест (ID: ".$entry.") необходимо завершить все квесты из группы (ID:".-$row2[0].")"); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result = mysql_query("SELECT entry FROM quest_template WHERE ExclusiveGroup=".$row2[0]." and entry!=".$row['PrevQuestId']) or die("Не верный запрос: " . mysql_error()); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while ($row3=mysql_fetch_array($result)){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Чтобы взять квест (ID: ".$entry.") необходимо завершить квест (ID:".$row3[0]."), ExclusiveGroup = ".-$row2[0]); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!CheckQuest($row3[0])){$Ok=false;} &nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mysql_free_result($result); &nbsp;&nbsp;&nbsp;} &nbsp; &nbsp;&nbsp;} &nbsp; &nbsp;&nbsp; else { //Предыдущий квест должен быть активен &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Чтобы взять квест (ID: ".$entry.") необходимо начать квест (ID:".-$row['PrevQuestId'].")"); &nbsp; &nbsp;&nbsp; &nbsp;if (!CheckRelation(-$row['PrevQuestId'])){$Ok=false;} //Проверка эксклюзивной группы квеста &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result = mysql_query("SELECT ExclusiveGroup FROM quest_template WHERE entry=".-$row['PrevQuestId']) or die("Не верный запрос: " . mysql_error()); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $row2=mysql_fetch_array($result); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mysql_free_result($result); //Если эксклюзивная группа меньше нуля, то необходимо взять все квесты &nbsp;&nbsp;&nbsp;if ($row2[0] &amp;&amp; $row2[0]&lt;0){ &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Debug("Проверка эксклюзивной группы квеста (ID:".-$row['PrevQuestId']."), ExclusiveGroup=".$row2[0]); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result = mysql_query("SELECT entry FROM quest_template WHERE ExclusiveGroup=".$row2[0]." and entry!=".-$row['PrevQuestId']) or die("Не верный запрос: " . mysql_error()); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while ($row3=mysql_fetch_array($result)){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Чтобы взять квест (ID: ".$entry.") необходимо начать квест (ID:".$row3[0]."), ExclusiveGroup = ".-$row2[0]); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!CheckRelation($row3[0])){$Ok=false;} &nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mysql_free_result($result); &nbsp;&nbsp;&nbsp;} &nbsp; &nbsp;&nbsp; } &nbsp;} //------------------------------------------------ //Проверка предыдущих квестов &nbsp;&nbsp;&nbsp; $result = mysql_query("SELECT * FROM quest_template WHERE NextQuestId=".$entry." or NextQuestId=-".$entry) or die("Не верный запрос: " . mysql_error()); &nbsp;&nbsp;&nbsp; while ($row=mysql_fetch_array($result)){ &nbsp; &nbsp;&nbsp;Debug("Проверка предыдущего квеста (ID:".$row['entry'].") c NextQuestId=".$entry); &nbsp; &nbsp;&nbsp;if ($row['NextQuestId']&gt;0){ //Предыдущий квест должен быть завершен &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Чтобы взять квест (ID: ".$entry.") необходимо завершить квест (ID:".$row['entry'].")"); &nbsp; &nbsp;&nbsp;&nbsp;if (!CheckQuest($row['entry'])){$Ok=false;} //Проверка эксклюзивной группы квеста //Если эксклюзивная группа меньше нуля, то необходимо пройти все квесты &nbsp;&nbsp;&nbsp;if ($row['ExclusiveGroup']&lt;0){ &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Debug("Проверка эксклюзивной группы квеста (ID:".$row['entry']."), ExclusiveGroup=".$row['ExclusiveGroup']); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result2 = mysql_query("SELECT entry FROM quest_template WHERE ExclusiveGroup=".$row['ExclusiveGroup']." and entry!=".$row['entry']) or die("Не верный запрос: " . mysql_error()); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while ($row2=mysql_fetch_array($result2)){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Чтобы взять квест (ID: ".$entry.") необходимо завершить квест (ID:".$row2[0]."), ExclusiveGroup = ".-$row['ExclusiveGroup']); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!CheckQuest($row2[0])){$Ok=false;} &nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mysql_free_result($result2); &nbsp;&nbsp;&nbsp;} &nbsp; &nbsp;&nbsp;} &nbsp; &nbsp;&nbsp; else { //Предыдущий квест должен быть активен &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Чтобы взять квест (ID: ".$entry.") необходимо начать квест (ID:".$row['entry'].")"); &nbsp; &nbsp;&nbsp; &nbsp;if (!CheckRelation($row['entry'])){$Ok=false;} //Проверка эксклюзивной группы квеста //Если эксклюзивная группа меньше нуля, то необходимо пройти все квесты &nbsp;&nbsp;&nbsp;if ($row['ExclusiveGroup']&lt;0){ &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Debug("Проверка эксклюзивной группы квеста (ID:".$row['entry']."), ExclusiveGroup=".$row['ExclusiveGroup']); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result2 = mysql_query("SELECT entry FROM quest_template WHERE ExclusiveGroup=".$row['ExclusiveGroup']." and entry!=".$row['entry']) or die("Не верный запрос: " . mysql_error()); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while ($row2=mysql_fetch_array($result2)){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Чтобы взять квест (ID: ".$entry.") необходимо начать квест (ID:".$row2[0]."), ExclusiveGroup = ".-$row['ExclusiveGroup']); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!CheckRelation($row2[0])){$Ok=false;} &nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mysql_free_result($result2); &nbsp;&nbsp;&nbsp;} &nbsp; &nbsp;&nbsp; } &nbsp;} &nbsp;&nbsp;&nbsp; mysql_free_result($result); //------------------------------------------------ &nbsp; } &nbsp;&nbsp; else {$Ok=false;Error("Квест (ID: ".$entry.") отсутствует в таблице quest_template");} &nbsp; unset($CurRel[$entry]); &nbsp; Info("&lt;/table&gt;"); &nbsp; if ($Ok){Info("OK");} &nbsp; $CacheRel[$entry]=$Ok; &nbsp; return $Ok; &nbsp;} //********************************** //Проверка возможности завершения квеста //********************************** &nbsp;function CanCompleteQuest($entry){ &nbsp; global $CacheQCom,$CurQCom; &nbsp; Info("Проверка возможности завершения квеста (ID: ".$entry."):"); //Если ранее проверяли то пропускаем проверку &nbsp; if (isset($CacheQCom[$entry])){ &nbsp;&nbsp;&nbsp;&nbsp; if&nbsp; ($CacheQCom[$entry]) {Info("Проверена ранее, статус - ОК");} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else {Error("Проверено ранее, статус - Обнаружена ошибка");} &nbsp;&nbsp;&nbsp;&nbsp; return $CacheQCom[$entry]; &nbsp; } &nbsp; Info("&lt;table&gt;"); //Защита от зацикливания &nbsp; if (isset($CurQCom[$entry])){ &nbsp; &nbsp;Warning("Возможно зацикливание, отмена повторной проверки"); &nbsp; &nbsp;Info("&lt;/table&gt;"); &nbsp; &nbsp;return true; &nbsp; } &nbsp;&nbsp; else {$CurQCom[$entry]=1;} &nbsp; $Ok=true;$ToTalk=true; &nbsp; $result = mysql_query("SELECT * FROM quest_template WHERE entry=".$entry) or die("Не верный запрос: " . mysql_error()); &nbsp; $row=mysql_fetch_array($result); &nbsp; mysql_free_result($result); &nbsp; if ($row){ //================================ //Автозавершенные квесты &nbsp;&nbsp;&nbsp; if (!$row["Objectives"]) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Квест (ID: ".$entry.") - автозавершающийся квест"); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unset($CurQCom[$entry]); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("&lt;/table&gt;"); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $CacheQCom[$entry]=true; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return true; &nbsp;&nbsp;&nbsp; } //================================ //Квест на доставку //-------------------------------- &nbsp;&nbsp;&nbsp; for ($i=1;$i&lt;5;$i++){ &nbsp;//Проверка требуемых предметов &nbsp;&nbsp;&nbsp;&nbsp; if ($row["ReqItemId".$i]!=0){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $ToTalk=false; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Для завершения квеста (ID: ".$entry.") необходимо добыть и принести предмет (ID: ".$row["ReqItemId".$i].") в количестве ".$row["ReqItemCount".$i]." шт."); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Debug("ReqItemID".$i." = ".$row["ReqItemId".$i]." ; ReqItemCount".$i." = ".$row["ReqItemCount".$i]); &nbsp; //Rоличество требуемого предмета равно нулю &nbsp;&nbsp;&nbsp; if ($row["ReqItemCount".$i]&lt;=0){$Ok=false;Error("Количество требуемого предмета ".$row["ReqItemId".$i]." должно быть больше нуля, поле ReqItemCount".$i." ");} &nbsp; //Проверка возможности добычи предмета &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!CanTakeItem($row["ReqItemId".$i],$row["ReqItemCount".$i])){$Ok=false;} &nbsp; } &nbsp;&nbsp;} //================================= //Квест на убийство/использование или разговор //--------------------------------- &nbsp;&nbsp;&nbsp; for ($i=1;$i&lt;5;$i++){ &nbsp; //квест на использование ГО &nbsp;&nbsp;&nbsp;&nbsp; if ($row["ReqCreatureOrGOId".$i]&lt;0){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $ToTalk=false; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Для завершения квеста (ID: ".$entry.") необходимо использовать ГО (ID: ".-$row["ReqCreatureOrGOId".$i].") ".$row["ReqCreatureOrGOCount".$i]." раз."); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Debug("ReqCreatureOrGOId".$i." = ".$row["ReqCreatureOrGOId".$i]." ; ReqCreatureOrGOCount".$i." = ".$row["ReqCreatureOrGOCount".$i]); &nbsp; //количество кастов/разговоров должно быть больше нуля &nbsp;&nbsp;&nbsp; if ($row["ReqCreatureOrGOCount".$i]&lt;=0){$Ok=false;Error("Количество кастов/ипользования должно быть больше нуля, поле ReqCreatureOrGOCount".$i." ");} &nbsp; //проверка наличия ГО &nbsp;&nbsp;&nbsp;&nbsp; if (!CanFindGO(0-$row["ReqCreatureOrGOId".$i],$row["ReqCreatureOrGOCount".$i])){$Ok=false;} &nbsp; //проверка типа ГО &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($row["ReqSpellCast".$i]==0){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result2 = mysql_query("SELECT * FROM gameobject_template WHERE entry=".-$row["ReqCreatureOrGOId".$i]) or die("Не верный запрос: " . mysql_error()); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($row2=mysql_fetch_array($result2)){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Debug("type = ".$row2['type']." ; data1 = ".$row2['data1']); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($row2['type']!=10){$Ok=false;Error("ГО ".$row2['name']." (ID: ".-$row["ReqCreatureOrGOId".$i].") имеет не верный тип (отличный от GOOBER(10)), или отсутствует требование каста спелла у квеста (ID: ".$entry.")");} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($row2['data1']!=$entry){$Ok=false;Error("ГО ".$row2['name']." (ID: ".-$row["ReqCreatureOrGOId".$i].") имеет не верный номер квеста в поле data1; data1 = ".$row2['data1'].", а должно = ".$entry);} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mysql_free_result($result2); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp; } &nbsp;&nbsp; else &nbsp;&nbsp;&nbsp;&nbsp; //квест на убийство/разговор &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($row["ReqCreatureOrGOId".$i]&gt;0){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $ToTalk=false; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Для завершения квеста (ID: ".$entry.") необходимо поговорить/убить моба (ID: ".$row["ReqCreatureOrGOId".$i].") ".$row["ReqCreatureOrGOCount".$i]." раз."); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Debug("ReqCreatureOrGOId".$i." = ".$row["ReqCreatureOrGOId".$i]." ; ReqCreatureOrGOCount".$i." = ".$row["ReqCreatureOrGOCount".$i]); &nbsp;&nbsp;&nbsp;&nbsp; //количество кастов/разговоров должно быть больше нуля &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($row["ReqCreatureOrGOCount".$i]&lt;=0){$Ok=false;Error("Количество кастов должно быть больше нуля, поле ReqCreatureOrGOCount".$i." ");} &nbsp;&nbsp;&nbsp;&nbsp; //проверка наличия моба &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!CanFindCreature($row["ReqCreatureOrGOId".$i],$row["ReqCreatureOrGOCount".$i])){$Ok=false;} &nbsp;&nbsp;&nbsp; } &nbsp;} //================================= //Квест на каст спелла //--------------------------------- &nbsp;&nbsp;&nbsp; for ($i=1;$i&lt;5;$i++){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($row["ReqSpellCast".$i]&gt;0){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $ToTalk=false; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Для завершения квеста (ID: ".$entry.") необходимо скастовать спелл (ID: ".$row["ReqSpellCast".$i].") ".$row["ReqCreatureOrGOCount".$i]." раз."); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Debug("ReqSpellCast".$i." = ".$row["ReqSpellCast".$i]); &nbsp;&nbsp;&nbsp;&nbsp; //проверка возможности каста &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!CanCastSpell($row["ReqSpellCast".$i],$row["ReqCreatureOrGOCount".$i],$row["ReqCreatureOrGOId".$i])){$Ok=false;} &nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp; } //================================= //Квест на разведку //--------------------------------- &nbsp;if ($row["SpecialFlags"]&amp;2){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $ToTalk=false; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Для завершения квеста (ID: ".$entry.") необходимо разведать территорию"); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Debug("SpecialFlags = ".$row["SpecialFlags"]); &nbsp;&nbsp; if (!CheckExplored($entry)){$Ok=false;}; &nbsp;} &nbsp;&nbsp;&nbsp; if ($ToTalk){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Для завершения квеста (ID: ".$entry.") необходимо просто сдать его"); &nbsp;&nbsp;&nbsp; } //================================= &nbsp; } &nbsp;&nbsp; else {$Ok=false;Error("Квест (ID: ".$entry.") отсутствует в таблице quest_template");} &nbsp; unset($CurQCom[$entry]); &nbsp; Info("&lt;/table&gt;"); &nbsp; if ($Ok){Info("OK");} &nbsp; $CacheQCom[$entry]=$Ok; &nbsp; return $Ok; &nbsp;} //*********************************** //Поиск мобов в мире //*********************************** &nbsp;function CanFindCreature($entry,$count){ &nbsp; global $CacheC,$CurC; &nbsp; Info("Поиск моба (ID: ".$entry."):"); //Если ранее проверяли то пропускаем проверку &nbsp; if (isset($CacheC[$entry])){ &nbsp;&nbsp;&nbsp;&nbsp; if ($CacheC[$entry]){ &nbsp;&nbsp;&nbsp;&nbsp; if ($CacheC[$entry]&gt;=$count){Info("Проверен ранее, статус - ОК");} &nbsp;&nbsp; &nbsp; else {Warning("Проверен ранее, мобов (ID: ".$entry.") не достаточно для выполнения, необходимо ".$count.", а в мире ".$CacheC[$entry]);} &nbsp;&nbsp;return $CacheC[$entry]; &nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Error("Проверен ранее, статус - Обнаружена ошибка"); &nbsp;&nbsp;&nbsp; return false; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp; } &nbsp; Info("&lt;table&gt;"); //Защита от зацикливания &nbsp; if (isset($CurC[$entry])){ &nbsp; &nbsp;Warning("Возможно зацикливание, отмена повторной проверки"); &nbsp; &nbsp;Info("&lt;/table&gt;"); &nbsp; &nbsp;return true; &nbsp; } &nbsp;&nbsp; else {$CurC[$entry]=1;} &nbsp; $Ok=true; //Определение кол-ва расставленных мобов &nbsp; $result = mysql_query("SELECT count(*) FROM creature WHERE id=".$entry) or die("Не верный запрос: " . mysql_error()); &nbsp; if ($row=mysql_fetch_array($result)){$c=$row[0];} &nbsp;&nbsp; else {$c=0;} &nbsp; Info("Количество мобов (ID: ".$entry.") в мире = ".$c); &nbsp; mysql_free_result($result); //Определение кол-ва заскриптованных в spell_scripts мобов &nbsp; $result = mysql_query("SELECT Id FROM spell_scripts WHERE command=10 and datalong=".$entry) or die("Не верный запрос: " . mysql_error()); &nbsp; while ($row=mysql_fetch_array($result)){ &nbsp;&nbsp; Info("Моб (ID: ".$entry.") спаунится скриптом при касте спелла (ID: ".$row[0].")"); &nbsp;&nbsp; $c+=CanCastSpell($row[0],$count,0); &nbsp; } &nbsp; mysql_free_result($result); //Определение кол-ва заскриптованных в quest_start_scripts мобов &nbsp; $result = mysql_query("SELECT id FROM quest_start_scripts WHERE command=10 and datalong=".$entry) or die("Не верный запрос: " . mysql_error()); &nbsp; while ($row=mysql_fetch_array($result)){ &nbsp;&nbsp; Info("Моб (ID: ".$entry.") спаунится скриптом при взятии квеста (ID: ".$row[0].")"); &nbsp;&nbsp; $result2 = mysql_query("SELECT entry FROM quest_template WHERE StartScript=".$row[0]) or die("Не верный запрос: " . mysql_error()); // Проверка закрепления скрипта за квестом &nbsp;&nbsp; if ($row2=mysql_fetch_array($result2)){ &nbsp;&nbsp;&nbsp; if (CheckQuest($row2[0])){$c++;} &nbsp;&nbsp; } &nbsp;&nbsp;&nbsp; else {Warning("Скприпт (ID: ".$row[0].") из quest_start_script не привязан ни к одному квесту.");} &nbsp;&nbsp; while ($row2=mysql_fetch_array($result2)){ &nbsp;&nbsp;&nbsp; if (CheckRelation($row2[0])){$c++;} &nbsp;&nbsp; } &nbsp;&nbsp; mysql_free_result($result2); &nbsp; } &nbsp; mysql_free_result($result); //Определение кол-ва заскриптованных в quest_end_scripts мобов &nbsp; $result = mysql_query("SELECT id FROM quest_end_scripts WHERE command=10 and datalong=".$entry) or die("Не верный запрос: " . mysql_error()); &nbsp; while ($row=mysql_fetch_array($result)){ &nbsp;&nbsp; Info("Моб (ID: ".$entry.") спаунится скриптом при окончании квеста (ID: ".$row[0].")"); &nbsp;&nbsp; $result2 = mysql_query("SELECT entry FROM quest_template WHERE CompleteScript=".$row[0]) or die("Не верный запрос: " . mysql_error()); // Проверка закрепления скрипта за квестом &nbsp;&nbsp; if ($row2=mysql_fetch_array($result2)){ &nbsp;&nbsp;&nbsp; if (CheckQuest($row2[0])){$c++;} &nbsp;&nbsp; } &nbsp;&nbsp;&nbsp; else {Warning("Скприпт (ID: ".$row[0].") из quest_end_script не привязан ни к одному квесту.");} &nbsp;&nbsp; while ($row2=mysql_fetch_array($result2)){ &nbsp;&nbsp;&nbsp; if (CheckQuest($row2[0])){$c++;} &nbsp;&nbsp; } &nbsp;&nbsp; mysql_free_result($result2); &nbsp; } &nbsp; mysql_free_result($result); //Определение кол-ва заскриптованных в gameobject_scripts мобов &nbsp; $result = mysql_query("SELECT id FROM gameobject_scripts WHERE command=10 and datalong=".$entry) or die("Не верный запрос: " . mysql_error()); &nbsp; while ($row=mysql_fetch_array($result)){ &nbsp;&nbsp;&nbsp; Info("Моб (ID: ".$entry.") спаунится скриптом при использовании ГО кнопки (ID: ".$row[0].")"); &nbsp;&nbsp;&nbsp; $c+=CanFindGO($row[0],$count); &nbsp; } &nbsp; mysql_free_result($result); //Определение кол-ва заскриптованных в event_scripts мобов &nbsp; $result = mysql_query("SELECT id FROM event_scripts WHERE command=10 and datalong=".$entry) or die("Не верный запрос: " . mysql_error()); &nbsp; while ($row=mysql_fetch_array($result)){ &nbsp;&nbsp;&nbsp; Info("Моб (ID: ".$entry.") спаунится скриптом при запуске эвента (ID: ".$row[0].")"); //Определение типа эвента &nbsp;&nbsp;&nbsp; $result2 = mysql_query("SELECT entry FROM gameobject_template WHERE (type=10 and data2=".$row[0].")or(type=3 and data6=".$row[0].")") or die("Не верный запрос: " . mysql_error()); &nbsp;&nbsp;&nbsp; while ($row2=mysql_fetch_array($result2)){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Эвент (ID: ".$row[0].") запускается при использовании ГО ".$row2['name']." (ID: ".$row2[0].")"); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $c+=CanFindGO($row2[0],$count); &nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp; mysql_free_result($result2); &nbsp;&nbsp;&nbsp; $result2 = mysql_query("SELECT SpellName1, Id FROM spell_dbc WHERE (Effect1 in (61) and EffectMiscVal1=".$row[0].") or (Effect2 in (61) and EffectMiscVal2=".$row[0].") or (Effect3 in (61) and EffectMiscVal3=".$row[0].")") or die("Не верный запрос: " . mysql_error()); &nbsp;&nbsp;&nbsp; while ($row2=mysql_fetch_array($result2)){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Эвент (ID: ".$row[0].") запускается при касте спелла ".$row2[0]." (ID: ".$row2[1].")"); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $c+=CanCastSpell($row2[1],$count,0); &nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp; mysql_free_result($result2); &nbsp; } &nbsp; mysql_free_result($result); //Поиск суммонищихся мобов в спеллах // Спелл с эффектом 28 SPELL_EFFECT_SUMMON, 41 SPELL_EFFECT_SUMMON_WILD, 42 SPELL_EFFECT_SUMMON_GUARDIAN, 56 SPELL_EFFECT_SUMMON_PET, 73 SPELL_EFFECT_SUMMON_POSSESSED // 87 SPELL_EFFECT_SUMMON_TOTEM_SLOT1, 88 SPELL_EFFECT_SUMMON_TOTEM_SLOT2, 89 SPELL_EFFECT_SUMMON_TOTEM_SLOT3, 90 SPELL_EFFECT_SUMMON_TOTEM_SLOT4, 97 SPELL_EFFECT_SUMMON_CRITTER // 112 SPELL_EFFECT_SUMMON_DEMON &nbsp; $result = mysql_query("SELECT SpellName1,Id FROM spell_dbc WHERE (Effect1 in (28,41,42,56,73,87,88,89,90,97,112) and EffectMiscVal1=".$entry.") or (Effect2 in (28,41,42,56,73,87,88,89,90,97,112) and EffectMiscVal2=".$entry.") or (Effect3 in (28,41,42,56,73,87,88,89,90,97,112) and EffectMiscVal3=".$entry.")") or die("Не верный запрос: " . mysql_error()); &nbsp; while ($row=mysql_fetch_array($result)){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Info("Моб (ID: ".$entry.") спаунится спеллом&nbsp; ".$row[0]." (ID: ".$row[1].")"); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $c+=CanCastSpell($row[1],$count,0); &nbsp; } &nbsp; mysql_free_result($result); //Оценка результатов &nbsp; if ($c&lt;$count){ &nbsp;&nbsp; if ($c==0){$Ok=false;Error("Мобов (ID: ".$entry.") не возможно найти ");} &nbsp;&nbsp;&nbsp; else {Warning("Мобов (ID: ".$entry.") не достаточно для выполнения, необходимо ".$count.", а можно найти ".$c);} &nbsp; } &nbsp; unset($CurC[$entry]); &nbsp; Info("&lt;/table&gt;"); &nbsp; if ($Ok){Info("OK");}; &nbsp; $CacheC[$entry]=$c; &nbsp; return $c; &nbsp;} //*********************************** //Поиск ГО в мире //*********************************** &nbsp;function CanFindGO($entry,$count){ &nbsp; global $CacheGO,$CurGO; &nbsp; Info("Проверка ГО (ID: ".$entry."):"); //Если ранее проверяли то пропускаем проверку &nbsp; if (isset($CacheGO[$entry])){ &nbsp;&nbsp;&nbsp;&nbsp; if ($CacheGO[$entry]){ &nbsp;&nbsp;&nbsp;&nbsp; if ($CacheGO[$entry]&gt;=$count){Info("Проверен ранее, статус - ОК");} &nbsp;&nbsp; &nbsp; else {Warning("Проверен ранее, ГО (ID: ".$entry.") не достаточно для выполнения, необходимо ".$count.", а в мире ".$CacheGO[$entry]);} &nbsp;&nbsp;return $CacheGO[$entry]; &n
Post #: 1
RE: Добавление своего SQL'a в БД wow - 2008-12-20 02:36:41.373333   
Pashkela

Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
Сканируй сайт на уязвимости и ищи SQL-inj
Post #: 2
RE: Добавление своего SQL'a в БД wow - 2008-12-20 02:52:48.780000   
MuTaToR

Сообщений: 55
Оценки: 0
Присоединился: 2008-05-26 11:48:42.893333
А чем можно просканировать?Я очень сильно туплю.  простите заранее….
Post #: 3
RE: Добавление своего SQL'a в БД wow - 2008-12-20 03:02:51.280000   
Pashkela

Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
Xspider например
Post #: 4
RE: Добавление своего SQL'a в БД wow - 2008-12-20 03:07:56   
MuTaToR

Сообщений: 55
Оценки: 0
Присоединился: 2008-05-26 11:48:42.893333
Спс, вот какраз его нашол в гугле. а онлайн сканеров нету? это так для информации чтоб знать…
 
Post #: 5
RE: Добавление своего SQL'a в БД wow - 2008-12-20 03:52:36.126666   
MuTaToR

Сообщений: 55
Оценки: 0
Присоединился: 2008-05-26 11:48:42.893333
хэ, и что я в логе должен увидеть? чёт я не понимаю(((
Post #: 6
RE: Добавление своего SQL'a в БД wow - 2008-12-20 12:32:57.926666   
Pashkela

Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
RTFM
Post #: 7
RE: Добавление своего SQL'a в БД wow - 2008-12-30 19:38:18.390000   
Angellock

Сообщений: 272
Оценки: 0
Присоединился: 2008-11-20 13:55:50.670000
quote:

хэ, и что я в логе должен увидеть? чёт я не понимаю(((


А что по - твоему ты ожидаешь там увидеть?!
Подарок в мешке от деда мороза? :D
Ищи там найденные SQL-inj
Post #: 8
Страниц:  [1]
Все форумы >> [Для начинающих] >> Добавление своего SQL'a в БД wow







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.