curl и очистка post-данных

partizan

Новичок
curl и очистка post-данных

Написал класс для работы с курлом.

PHP:
function navigate($url, $post=false)     
{
              .............

         if ($post)
         {
             curl_setopt($this->ch, CURLOPT_POST, 1);
             curl_setopt($this->ch, CURLOPT_POSTFIELDS, $post);
         }
         else 
         {             
             curl_setopt($this->ch, CURLOPT_POST, 0);
         };
              .............
}
Оказалось, что на некоторых машинах, если вызывалась эта ф-я с пост-запросом, то потом несмотря на curl_setopt($this->ch, CURLOPT_POST, 0), эти данные снова передаются при повторном вызове ф-и уже без пост-данных.

Дописал еще curl_setopt($this->ch, CURLOPT_POSTFIELDS, '') - так передается "пустой" запрос
(Вот заголовки, которые отправляет курл:

Content-Length: 0
Content-Type: application/x-www-form-urlencoded
)
А на сомом деля этих строчек вообще не должно быть, т.к. пост запрос не нужен вообще.

Как правильно очистить post-данные?
 

StUV

Rotaredom
т.е. в рамках одного процесса если один раз выполнился
if ($post){ ... }
curl_close(...);
curl начинает "глючить" ?
 

partizan

Новичок
нет, не начинает. Но если не закрывать сессию, а пользоваться одной и той же, то после отправки пост-запроса, уже не получается эт него избавиться (заголовок Content-Type: application/x-www-form-urlencoded посылается при всех следующих вызовах curl_exec, когда надо и не надо).

Вопрос и состоял в том, как "сбросить" пост данные.

Если каждый раз закрывать сеанс курл и создавать новый - нужно будет каждый раз устанавливать еще кучу параметров, я хочу найти нормальное решение проблеммы
 

StUV

Rotaredom
partizan
хм
неиспользование curl_close - в целях экономии ресурсов ?..
 

God

Новичок
если нужен GET после POST'a (как я понял)
PHP:
curl_setopt($this->ch, CURLOPT_CUSTOMREQUEST, 'GET');
 
Сверху