ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

SteelBot
  #1  
Старый 21.06.2009, 17:11
Аватар для Sudba
Sudba
Новичок
Регистрация: 19.06.2009
Сообщений: 23
Провел на форуме:
80405

Репутация: 1
По умолчанию SteelBot

Здравствуйте дорогие форумчанины.
Прошу вас помочь с написание плагина, который показывает гороскоп. Есть готовое решение только оно не работает. Я предлагаю брать гороскоп с mail.ru но там каждый знак зодиака подскатавлен под номером. Получается надо изменять на автомате, например козерогу присваивать значение 10, и подстанавливать это значение в ссылку.
Цитата:
<?php function goro($param) { if (empty($param)) { SteelBot::CmdHelp('goro'); } else { $param=iconv('windows-1251', 'UTF-8', $param); switch ($param){ case "козерог": case "овен": case "рак": case "весы": case "водолей": case "телец": case "лев": case "скорпион": case "рыбы": case "близнецы": case "дева": case "стрелец": $arZod = array('Козерог' => 10, 'Овен' => 1,'дева'=>'9'); $buf=file_get_contents("http://horo.mail.ru/prediction.html?sign=".$arZod[$param]); $buf=iconv("WINDOWS-1251", "UTF-8", $buf); $a=explode("table", $buf); $a[9]=strip_tags($a[9]); $a[11]=strip_tags($a[11]); $chislo=strpos($a[9],">"); $a[9]=substr($a[9],$chislo+1); $chislo=strpos($a[11],">"); $a[11]=substr($a[11],$chislo+1); $chislo=strpos($a[9],"для"); $part1=substr($a[9],0,$chislo+6); $part2=substr($a[9],$chislo+6); $chislo=strpos($a[11],"для"); $part3=substr($a[11],0,$chislo+6); $part4=substr($a[11],$chislo+6); $param=iconv("WINDOWS-1251", "UTF-8", $param); SteelBot::Msg($part1." ".$param." ".$part2." "." ".$part3." ".$param." ".$part4); break; default: SteelBot::Msg('Неправильно введен знак зодиака. Существующие знаки зодиака: козерог, овен, рак, весы, водолей, телец, лев, скорпион, рыбы, близнецы, дева, стрелец'); } } } SteelBot::RegisterCmd("гороскоп1","goro", 1,"гороскоп (знак зодиака) - гороскоп"); ?>
это готовое не доделоное решение
 
Ответить с цитированием

  #2  
Старый 21.06.2009, 17:13
Аватар для --StraNger--
--StraNger--
Познающий
Регистрация: 04.01.2009
Сообщений: 94
Провел на форуме:
404716

Репутация: 145
Отправить сообщение для --StraNger-- с помощью ICQ
По умолчанию

парень, ты знаешь что такое перенос строки?
 
Ответить с цитированием

  #3  
Старый 21.06.2009, 17:18
Аватар для Pashkela
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме:
9220514

Репутация: 3338


Отправить сообщение для Pashkela с помощью ICQ
По умолчанию

Похоже на brainfuck чем-то
 
Ответить с цитированием

  #4  
Старый 21.06.2009, 17:19
Аватар для LEE_ROY
LEE_ROY
Постоянный
Регистрация: 09.11.2006
Сообщений: 639
Провел на форуме:
1917742

Репутация: 541


По умолчанию

php code beautifier
PHP код:
<?php

function goro$param )
{
    if( empty(
$param) ) {
        
SteelBot::CmdHelp'goro' );
    } else {
        
$param iconv'windows-1251''UTF-8'$param );
        switch ( 
$param ) {
            case 
"козерог":
            case 
"овен":
            case 
"рак":
            case 
"весы":
            case 
"водолей":
            case 
"телец":
            case 
"лев":
            case 
"скорпион":
            case 
"рыбы":
            case 
"близнецы":
            case 
"дева":
            case 
"стрелец":
                
$arZod = array( 'Козерог' => 10'Овен' => 1'дева' => '9' );
                
$buf file_get_contents"http://horo.mail.ru/prediction.html?sign=" $arZod[$param] );
                
$buf iconv"WINDOWS-1251""UTF-8"$buf );
                
$a explode"table"$buf );
                
$a[9] = strip_tags$a[9] );
                
$a[11] = strip_tags$a[11] );
                
$chislo strpos$a[9], ">" );
                
$a[9] = substr$a[9], $chislo );
                
$chislo strpos$a[11], ">" );
                
$a[11] = substr$a[11], $chislo );
                
$chislo strpos$a[9], "для" );
                
$part1 substr$a[9], 0$chislo );
                
$part2 substr$a[9], $chislo );
                
$chislo strpos$a[11], "для" );
                
$part3 substr$a[11], 0$chislo );
                
$part4 substr$a[11], $chislo );
                
$param iconv"WINDOWS-1251""UTF-8"$param );
                
SteelBot::Msg$part1 " " $param " " $part2 " " " " $part3 " " $param " " $part4 );
                break;
            default:
                
SteelBot::Msg'Неправильно введен знак зодиака. Существующие знаки зодиака: козерог, овен, рак, весы, водолей, телец, лев, скорпион, рыбы, близнецы, дева, стрелец' );
        }
    }
}
SteelBot::RegisterCmd"гороскоп1""goro"1"гороскоп (знак зодиака) - гороскоп" );

?>
 
Ответить с цитированием

  #5  
Старый 21.06.2009, 17:52
Аватар для Sudba
Sudba
Новичок
Регистрация: 19.06.2009
Сообщений: 23
Провел на форуме:
80405

Репутация: 1
По умолчанию

Я вставил, и она сама так в строку превратилось, извиняюсь....так поможете мне?)))
 
Ответить с цитированием

  #6  
Старый 21.06.2009, 20:27
Аватар для LEE_ROY
LEE_ROY
Постоянный
Регистрация: 09.11.2006
Сообщений: 639
Провел на форуме:
1917742

Репутация: 541


По умолчанию

у меня нету класса стилбот, писал на коленке
PHP код:


<?php

function goro$param )
{
    if( empty(
$param) ) {
        
SteelBot::CmdHelp'goro' );
    } else {
        
$param_id 0;
        
/*В param_id вписать нужное значение*/
        
switch ( $param ) {
            case 
"козерог"
                
$param_id 10;
            case 
"овен"
                
$param_id 10;
            case 
"рак"
                
$param_id 10;
            case 
"весы"
                
$param_id 10;
            case 
"водолей"
                
$param_id 10;
            case 
"телец"
                
$param_id 10;
            case 
"лев"
                
$param_id 10;
            case 
"скорпион"
                
$param_id 10;
            case 
"рыбы"
                
$param_id 10;
            case 
"близнецы"
                
$param_id 10;
            case 
"дева"
                
$param_id 10;
            case 
"стрелец"
                
$param_id 10;
            
                
$buf file_get_contents"http://horo.mail.ru/prediction.html?sign=" $param_id );
                
preg_match('/(?<=tm_today">)(?:\s*)?[\s\S]*?(?=<script)/'$buf$res);
                
$buf strip_tags($res[0]);
                
SteelBot::Msg$buf );
                break;
            default:
                
SteelBot::Msg'Неправильно введен знак зодиака. Существующие знаки зодиака: козерог, овен, рак, весы, водолей, телец, лев, скорпион, рыбы, близнецы, дева, стрелец' );
        }
    }
}
SteelBot::RegisterCmd"гороскоп1""goro"1"гороскоп (знак зодиака) - гороскоп" );

?>
 
Ответить с цитированием

  #7  
Старый 22.06.2009, 00:16
Аватар для Sudba
Sudba
Новичок
Регистрация: 19.06.2009
Сообщений: 23
Провел на форуме:
80405

Репутация: 1
По умолчанию

Присылает ответ, тока что то с оригиналом его не сравнить, вот что присылает робот на водолея:
Цитата:
Очень сильны позитивные тенденции в сфере личных отношений. В этот день начинаются новые романы, а уже существующие обретают особую глубину....
а вот с маила
Цитата:
С профессиональной точки зрения день очень сложен: деловая активность невысока, а окружающие, в том числе и руководство, ждут от вас выдающихся успехов......
 
Ответить с цитированием

  #8  
Старый 22.06.2009, 00:21
Аватар для LEE_ROY
LEE_ROY
Постоянный
Регистрация: 09.11.2006
Сообщений: 639
Провел на форуме:
1917742

Репутация: 541


По умолчанию

правь регулярку, я бота твоего в глаза не видел, если хочеш готовое решение прошу в раздел покупки и продажи. ты param_id правлеьно выставил?
 
Ответить с цитированием

  #9  
Старый 22.06.2009, 00:29
Аватар для Sudba
Sudba
Новичок
Регистрация: 19.06.2009
Сообщений: 23
Провел на форуме:
80405

Репутация: 1
По умолчанию

Да правильно, у всех не тот гороскоп написан
 
Ответить с цитированием

  #10  
Старый 22.06.2009, 00:34
Аватар для Sudba
Sudba
Новичок
Регистрация: 19.06.2009
Сообщений: 23
Провел на форуме:
80405

Репутация: 1
По умолчанию

По такому же принцыпу попытался сделать плагин для погоды, с gismeteo.ru вот код:
PHP код:
<?php 

function pogoda$param 

    if( empty(
$param) ) { 
        
SteelBot::CmdHelp'pogoda' ); 
    } else { 
        
$param_id 0
        
/*В param_id вписать нужное значение*/ 
        
switch ( $param ) { 
            case 
"москва":  
                
$param_id 4368
            case 
"овен":  
                
$param_id 10
            case 
"рак":  
                
$param_id 10
            case 
"весы":  
                
$param_id 10
            case 
"водолей":  
                
$param_id 10
            case 
"телец":  
                
$param_id 10
            case 
"лев":  
                
$param_id 10
            case 
"скорпион":  
                
$param_id 10
            case 
"рыбы":  
                
$param_id 10
            case 
"близнецы":  
                
$param_id 10
            case 
"дева":  
                
$param_id 10
            case 
"стрелец":  
                
$param_id 10
             
                
$buf file_get_contents"http://gismeteo.ru/city/daily/" $param_id ); 
                
preg_match('/(?<=tm_today">)(?:\s*)?[\s\S]*?(?=<script)/'$buf$res); 
                
$buf strip_tags($res[0]); 
                
SteelBot::Msg$buf ); 
                break; 
            default: 
                
SteelBot::Msg'Вы ввели город, которого нет в базе.' ); 
        } 
    } 

SteelBot::RegisterCmd"погода""pogoda"1"погода (город)- узнать погоду в городе" ); 

?>
отсылаю погода москва, и мне ничего в ответ не приходит... помогите


Исправил, извините

Последний раз редактировалось Sudba; 22.06.2009 в 10:44..
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ