Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Помогите со скриптом
 
 автор: zion115   (11.02.2011 в 11:27)   письмо автору
 
 

Доброе утро. Вот скрипт
<?PHP
require_once('class-IXR.php');

$Host "www.livejournal.com";
$User file('users.txt');
$Pass file('pass.txt');

for (
$i 0$i 3$i++){
$User1=trim($User[$i]);
$Pass1=trim($Pass[$i]);

$Mess iconv('windows-1251','UTF-8','gfgfgfgfgfg');
$Subject iconv('windows-1251','UTF-8''тра тата'); 



// обратка
$LJ_id;$LJ_url;$ErrorCode;$ErrorText="-";
if (
lj_post ($Host,$User1,$Pass1,$Subject$Mess,$LJ_id$LJ_url$ErrorCode$ErrorText))
echo 
" Сообшение отправлено LJ_id=".$LJ_id." <a href=\"".$LJ_url."\"> смотреть </a><br>";
else
echo 
"<h1> Ошибка ".$ErrorCode.":".$ErrorText."</h1><br>";
flush();

//———————————————–   
function lj_post ($Host$User1$Pass1$Subject$Mess, &$LJ_id, &$LJ_url, &$ErrorCode, &$ErrorText,
$Security='public'$opt_nocomments=1$opt_preformatted=1$opt_backdated=0$opt_noemail=1)
{

  
$ErrorCode=0;
$ErrorText="";
$LJ_id=0;
$LJ_url="";
// создаем клиента (использован модуль WordPress /wp-includes/class-IXR.php)
$client = new IXR_Client($Host'/interface/xmlrpc');
// $client->debug=1;
// получение данных для аутефикации
if (!$client->query('LJ.XMLRPC.getchallenge'))
{
$ErrorCode=$client->getErrorCode();
$ErrorText=$client->getErrorMessage();
unset (
$client);
return 
false;
}
$response$client->getResponse();
$challenge $response['challenge'];
// создаем массив для отправки данных
$args = array();
$args['username'] = $User1;
$args['auth_method'] ='challenge';
$args['auth_challenge'] = $challenge;
$args['auth_response'] = md5($challenge md5($Pass1));
$args['ver'] = "1";       
$args['lineendings']='pc';
$args['subject'] =$Subject;
$args['event'] = $Mess;
$args['year'] = date('Y');
$args['mon'] = date('n');
$args['day'] = date('j');
$args['hour'] = date('G');
$args['min'] = date('i');
$args['security'] ='public';
// Дополнительные опции

$args['props'] = array("opt_nocomments" =>$opt_nocomments,
"opt_preformatted" =>$opt_preformatted,
"opt_backdated" =>$opt_backdated,
"opt_noemail" =>$opt_noemail );

// Собственно отправка
if (!$client->query('LJ.XMLRPC.postevent'$args))
{
$ErrorCode=$client->getErrorCode();
$ErrorText=$client->getErrorMessage();
$response $client->getResponse();
unset (
$client);
return 
false;
}
else
{
$response $client->getResponse();
$LJ_id$response['itemid'];
$LJ_url=$response['url'];
unset (
$client);
return 
true;
}
}
}
?>


выдает ошибку Fatal error: Call to undefined function lj_post()
без цикла работает.

  Ответить  
 
 автор: Косорылый   (11.02.2011 в 11:36)   письмо автору
 
   для: zion115   (11.02.2011 в 11:27)
 

А зачем вобще в функции эти параметры ?
function lj_post ( .............
$Security='public', 
$opt_nocomments=1, 
$opt_preformatted=1, 
$opt_backdated=0,
$opt_noemail=1

Функцию вы вызываете только с такими параметрами
if (  lj_post (
$Host,
$User1,
$Pass1,
$Subject, 
$Mess,
$LJ_id, 
$LJ_url, 
$ErrorCode, 
$ErrorText 
) )

  Ответить  
 
 автор: Лена   (11.02.2011 в 13:16)   письмо автору
 
   для: Косорылый   (11.02.2011 в 11:36)
 

$Security='public',
$opt_nocomments=1,

Так тоже можно. Это значения по умолчанию - если аргументам функции не будет присвоено значения, они возьмут по умолчанию. Если они вообще не используются, то они при вызове и не пишутся.

Автору темы вопрос:
Вызов функции происходит в том же файле?
И еще одно. Вы пишете для WordPress. Я не знаю, может быть там, если создаете свои функции, к ее названию надо какой-то префикс добавлять...

  Ответить  
 
 автор: Igorek   (11.02.2011 в 14:12)   письмо автору
 
   для: zion115   (11.02.2011 в 11:27)
 

может все-таки не стоит объявлять функцию в теле цикла?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования