IE и Chrome удаляют пробелы при публикации данных с помощью curl - PullRequest
0 голосов
/ 20 июля 2011
$first1 = $_POST['CFirst'];
$last1 = $_POST['CLast'];
$Phone1 =$_POST['Phone'];
$Fax1 =  $_POST['Fax'];
$CEmail1 = $_POST['CEmail'];
$message1 = $_POST['Message']

$post_string = "ID=$id&Source=$Source&noMail=$noMail&CFirst=$first1&CLast=$last1&Phone=$Phone1&CEmail=$CEmail1&Message=$message1";

//create cURL connection
$curl_connection = 
  curl_init($url);

//set options
curl_setopt($curl_connection, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($curl_connection, CURLOPT_USERAGENT, 
  "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)");
curl_setopt($curl_connection, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl_connection, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl_connection, CURLOPT_FOLLOWLOCATION, 1);

//set data to be posted
curl_setopt($curl_connection, CURLOPT_POSTFIELDS, $post_string);

Проблема с приведенным выше кодом заключается в том, что он удаляет пробелы в Chrome и IE, но в случае Firefox работает нормально.Например: - скажем, если я поставлю пробелы в поле ввода «Привет, как дела».сейчас прямо сейчас идет как Hellohowareyou в случае IE / Chrome.В чем может быть проблема?

Есть идеи?

1 Ответ

0 голосов
/ 20 июля 2011

Я не уверен, поможет ли это, но просто делюсь написанной мной функцией для получения страниц с помощью curl.

<code>function get_web_page($url)
    {
            //echo "curl:url<pre>".$url."

"; $ options = array (CURLOPT_RETURNTRANSFER => true, // return webpage CURLOPT_HEADER => false, // не возвращать заголовки CURLOPT_FOLLOWLOCATION => true, // следить за перенаправлениями CURLOPT_ENCODING => "", // обрабатывать все кодировки CURLOPT_USERAGENT => "spider", // кто я такой CURLOPT_AUTOREFER =>// установить реферер при перенаправлении CURLOPT_CONNECTTIMEOUT => 15, // тайм-аут при соединении CURLOPT_TIMEOUT => 15, // тайм-аут при ответе CURLOPT_MAXREDIRS => 10, // остановка после 10 перенаправлений); $ ch = curl_init ($ url); curl_seto_$ ch, $ options); $ content = curl_exec ($ ch); $ err = curl_errno ($ ch); $ errmsg = curl_error ($ ch); $ header = curl_getinfo ($ ch, CURLINFO_EFFECTIVE_URL); curl_close ($ ch); $ header ['errno'] = $ err; $ header ['errmsg'] = $ errmsg; // изменить здесь errmsg на errno if ($ errmsg) {echo "CURL:". $ errmsg. "
";} вернуть $ content;}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...