Как преобразовать ассоциативный массив в строку запроса?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как преобразовать ассоциативный массив в строку запроса?

Сообщение Anonymous »

ОБНОВЛЕНИЕ 1:

В моем коде также есть следующий цикл foreach:

Код: Выделить всё

foreach ($_POST as $key => $value){
$message .= $key . " = " .$value ."\n\n
";
}
Какой последний.

Или, возможно, проблема в строке:

Код: Выделить всё

curl_setopt($ch, CURLOPT_POSTFIELDS, $req);
Не нравится %5B0%5D в сгенерированной строке, т.е.

Код: Выделить всё

transaction%5B0%5D=USD+21.00
с помощью кода $req = http_build_query($_POST);?

ОРИГИНАЛЬНЫЙ ВОПРОС:

Я получаю следующее сообщение об ошибке:

Код: Выделить всё

[Sun Aug 04 10:00:00 2012] [error] [client 000.0.00.000] PHP Warning:  stripslashes() expects parameter 1 to be string, array given in /var/www/page.php on line 20
[Sun Aug 04 10:00:00 2012] [error] [client 000.0.00.000] PHP Stack trace:
[Sun Aug 04 10:00:00 20122] [error] [client 000.0.00.000] PHP   1. {main}() /var/www/page.php:0
[Sun Aug 04 10:00:00 2012] [error] [client 000.0.00.000] PHP   2. stripslashes() /var/www/page.php:20
Код проблемы следующий:

Код: Выделить всё

Line 19: foreach ($_POST as $key => $value) {
Line 20:     $value = urlencode(stripslashes($value));
Line 21:     $req .= "&$key=$value";
Line 22: }
Где $_POST содержит следующее:

Код: Выделить всё

Array
(
[transaction] => Array
(
[0] => USD 21.00
)

[payment_request_date] => Sat Aug 04 10:00:00 PDT 2012
[return_url] => http://000.000.000.000/success.php
[fees_payer] => EACHRECEIVER
[ipn_notification_url] => http://000.000.000.000/ipn.php
[sender_email] => buyer_0394820394_per@gmail.com
[verify_sign] => slkdfj30r2489urj0947830ru0ty80ur0er037jfgoiru932e.as329e
[test_ipn] => 1
[cancel_url] => http://000.000.000.000/cancel.php
[pay_key] => AP-SLKJ30F9J90J3RSD3
[action_type] => PAY
[transaction_type] => Adaptive Payment PAY
[tracking_id] => E4902RJF2
[status] => COMPLETED
[log_default_shipping_address_in_transaction] => false
[charset] => windows-1252
[notify_version] => UNVERSIONED
[reverse_all_parallel_payments_on_error] => false
)
Вызывает ли функция Stripslashes() проблему из-за массива внутри массива? Если да, то как мне справиться с $_POST в цикле foreach, если нет, в чем может быть проблема?

Подробнее здесь: https://stackoverflow.com/questions/118 ... uerystring
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»