Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: CURL CURLOPT_POSTFIELDS
Форумы портала PHP.SU » » Работа с сетью » CURL CURLOPT_POSTFIELDS

Страниц (1): [1]
 

1. gbushmakin - 17 Июня, 2012 - 14:56:38 - перейти к сообщению
Почему, когда я в поле CURLOPT_POSTFIELDS ввожу русские буквы, чтобы отправились данные post, то система меня не понимает? Не выдаёт результат. Если написать по английски, то всё работает. В чём тогда проблема?


curl_setopt($ch, CURLOPT_POSTFIELDS, "value=РУССКИЕ"); - Так не работает

curl_setopt($ch, CURLOPT_POSTFIELDS, "value=RUSSIAN"); - Так работает
2. Мелкий - 17 Июня, 2012 - 15:04:55 - перейти к сообщению
Если в CURLOPT_POSTFIELDS передаёте строку, она должна быть уже должным образом url-кодирована.
0) передавайте массив ключ=>значение, тогда curl будет сам кодировать. Обратите внимание, что в этом случае будет использоваться multipart/form-data, вместо application/x-www-form-urlencode d.
1) передавайте массив в http_build_query, результат - курлу.
2) кодируйте значения самостоятельно - urlencode
3. gbushmakin - 17 Июня, 2012 - 15:12:26 - перейти к сообщению
Мелкий, А можно примером? Не совсем понял...
4. Мелкий - 17 Июня, 2012 - 15:43:10 - перейти к сообщению
0) curl_setopt($ch, CURLOPT_POSTFIELDS, array("value"=>"РУССКИЕ"));
1) curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array("value"=>"РУССКИЕ")));
2) curl_setopt($ch, CURLOPT_POSTFIELDS, "value=".urlencode("РУССКИЕ"));
5. gbushmakin - 17 Июня, 2012 - 15:58:56 - перейти к сообщению
Нет, ну не срабатые почему то. Вот код. Может ошибка где...

PHP:
скопировать код в буфер обмена
  1. $ch = curl_init();
  2. curl_setopt($ch, CURLOPT_URL, "http://xxx.ru/");
  3. curl_setopt($ch, CURLOPT_HEADER, 0);
  4. curl_setopt($ch, CURLOPT_POST, 0);
  5. curl_setopt($ch, CURLOPT_POSTFIELDS, "value=".urlencode($_POST['value']));
  6. curl_exec($ch);
  7.  

 

Powered by ExBB FM 1.0 RC1