drupal_http_request

Главные вкладки

Аватар пользователя Killer.ru Killer.ru 12 декабря 2011 в 18:07

Всем привет. Прошу помощи по
drupal_http_request, просто сам чёт не смог разобраться. Проблема заключается в том, что при помощи функции
drupal_get_form('super_form')
создаю форму и по сабмиту отправляю введённые данные, всё-бы ничего тока вот если передаётся одна переменная, всё нормально, а когда их 2-3 то принять я их и обработать не могу. Вот кусок кода может это я где косячу и не вижу.

function super_form($form_state ) {

$form['т1']['text'] = array(
'#type' => 'textfield',
'#title' => t('текст'),
'#default_value' => '',
'#maxlength' => 180,
'#required' => TRUE, // добавлено обязательное заполнение
);
$form['т1']['nomer'] = array(
'#type' => 'textfield',
'#title' => t('текст'),
'#default_value' => '',
'#maxlength' => 180,
'#required' => TRUE, // добавлено обязательное заполнение
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => 'добавить',
);
return $form;
}

function super_form_submit($form, &$form_state)
{
$text_ss = $form_state['values']['killer']['text_anchor_second'];
$text = $form_state['values']['killer']['text_anchor_first'];
$select = $form_state['values']['killer']['select'];
$Quote = array ($text , $text_ss);
$url = 'http://form/priem' ;
$result = drupal_http_request(
$url,
$options = array(
'method' => 'POST',
'data' => $text & $text_ss
)

);

Тока не могу понять как принять его, маны уже задолбался прикуриват, пишут то " array ", то " 0 ". Я заранее благодарен за любую помощь.

Комментарии

Аватар пользователя YGerasimov YGerasimov 12 декабря 2011 в 20:16

Возможно, нужно подготовить аргументы для переменной $data:

$arguments = array('argument1' => $text, 'argument2' => $text_ss);
$data = http_build_query($arguments, '', '&');

а потом уже

$result = drupal_http_request($url, array(), 'POST', $data);

См так же http://api.drupal.org/api/drupal/includes--common.inc/function/drupal_ht...

Аватар пользователя Killer.ru Killer.ru 13 декабря 2011 в 15:59

Вот что там приходит. argument1=%D1%82%D0%B5%D0%BA%D1%81%D1%82+1&argument2=%D1%82%D0%B5%D0%BA%D1%81%D1%82+2
Поумничать никогда не лень конечно.
Я же не совсем тормоз.
только первый argument получается получить. Второй просто исчезает.

Аватар пользователя Killer.ru Killer.ru 13 декабря 2011 в 17:16

Спасибо большое. Только у меня так не получилось, я вот так сделал.

$arguments = array('argument' => $text .'/'. $slovo);

$data = http_build_query($arguments);

$result = drupal_http_request($url, 'POST', 'data='.$data );

А там где его обрабатываю, я написал так:
$text = $_POST['data'] ;

$prinyal = parse_str ($text);
$text_ooo = split ('/' , $argument);
$text_post = $text_ooo['0'];
$text_tsop = $text_ooo['1'];

Теперь работает!!!!!

Ещё раз спасибо.