Тема: L2Top
Показать сообщение отдельно
Непрочитано 20.07.2010, 15:57   #1
Пользователь

Автор темы (Топик Стартер) L2Top

Помогите с скриптом.



PHP код:
connect();
if(!isset(
$_POST['name']))
  {
  echo 
$start;
  }
else
  {
  if(
ereg("^([a-zA-Z0-9_-])*$"$_POST['name']))
  {
  
$total=0;
  
$name=mysql_escape_string($_POST['name']);
  
$char_id_ar=mysql_fetch_assoc(mysql_query("SELECT `obj_Id` FROM `characters` WHERE `char_name` = '$name';"));
  if(
$char_id_ar!=array())
    {
    
$char_id_ar=mysql_fetch_assoc(mysql_query("SELECT `obj_Id` FROM `characters` WHERE `char_name` = '$name' AND `online`=0;"));
    if(
$char_id_ar!=array())
    {
    
$char_id_sql=mysql_escape_string($char_id_ar['obj_Id']);
    
$bonus_id_sql=mysql_escape_string($config['bonus_id']);
    
$numberous_sql=mysql_escape_string($config['numberous']);
    
$html=@file_get_contents($config['url_info']);
    if (
$html && preg_match_all('/([^\s]+)/'$html$matches)) 
      {
      foreach (
$matches[1] as $id => $nick)
        {
        if (
strtolower($nick)===strtolower($name)) 
          {
          
$voters[]=$matches[1][$id-2];
          }
        }
        if (
$voters!=array())
          {
          foreach (
$voters as $time)
            {
            
$time_sql=mysql_escape_string($time);
            
$array=mysql_fetch_assoc(mysql_query("SELECT * FROM `character_vote` WHERE `char_name` = '$name' AND `date` = '$time_sql';"));
            if (
$array == array())
              {
              
$array=mysql_fetch_assoc(mysql_query("SELECT * FROM `items` WHERE `owner_id` = '$char_id_sql' AND `item_id` = '$bonus_id_sql';"));
              if (
$array == array())
                {
                
$array=mysql_fetch_assoc(mysql_query("SELECT MAX(`object_id`)+1 AS `id` FROM `items`"));
                
$ins_id=$array['id'];
                
$SQL=mysql_query("INSERT INTO `items` (`owner_id`, `object_id`, `item_id`, `count`, `enchant_level`, `loc`, `loc_data`, `price_sell`, `price_buy`, `time_of_use`, `custom_type1`, `custom_type2`, `mana_left`) VALUES('$char_id_sql', '$ins_id', '$bonus_id_sql', '$numberous_sql', 0, 'INVENTORY', 0, 0, 0, NULL, 0, 0, -1);");
                }
              else
                {
                
$SQL=mysql_query("UPDATE `items` SET `count` = `count` + '$numberous_sql' WHERE `owner_id` = '$char_id_sql' AND `item_id` = '$bonus_id_sql';");
                }
              if (
$SQL)
                {
                
mysql_query("INSERT INTO `character_vote` (`char_name`, `date`) VALUES ('$name', '$time');");
                
$total+=$config['numberous'];
                
$log1="
                <br>
                Бонус за "
.$time." зачислен.";
                echo 
$log1;
                }
              else
                {
                
$error="Ошибка #4";
                echo 
"<br><font color='red'>Извините, к сожалению на данный момент этот сервис не доступен.<br>".$error."</font><br></center></body></html>";
                exit;
                }
              }
            else
              {
              
$log2="
              <br>Вы уже полчили бонус за голос за "
.$time;
              echo 
$log2;
              }
            }
          }
        else
          {
          
$log3="
          <br><br>Извините, но к сожалению ваш голос на сайте L2Top.ru не найден.<br>
          Если вы только что проголосовали, то подождите в течении трёх минут, пока Ваш голос появится в списке последних проголосовавших. В ином случае, для получения бонуса, проголосуйте за сервер.<br>"
;
          echo 
$log3;
          }
      }
    else
      {
      
$error="Ошибка #3";
      echo 
"<br><font color='red'>Извините, к сожалению на данный момент этот сервис не доступен.<br>".$error."</font><br></center></body></html>";
      exit; 
Пишет что не конектит к БД. Сборка сервера l2dream Final
Raid вне форума Ответить с цитированием