<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>myGeeBlog &#187; blip</title>
	<atom:link href="http://urzenia.net/tag/blip/feed/" rel="self" type="application/rss+xml" />
	<link>http://urzenia.net</link>
	<description>blog programisty z piekła rodem...</description>
	<lastBuildDate>Sat, 10 Jul 2010 20:21:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1-alpha</generator>
		<item>
		<title>BlipApi.py &#8211; 0.02.03</title>
		<link>http://urzenia.net/424/blipapipy-00203/</link>
		<comments>http://urzenia.net/424/blipapipy-00203/#comments</comments>
		<pubDate>Sun, 19 Apr 2009 09:27:00 +0000</pubDate>
		<dc:creator>MySZ</dc:creator>
				<category><![CDATA[blip]]></category>
		<category><![CDATA[bliposfera]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://urzenia.net/?p=424</guid>
		<description><![CDATA[Jakiś czas temu chciałem pobawić się Blip!em za pomocą Pythona. Ot, mam w planach zrobienie sobie coś a&#8217;la Sekretarka (która oddaje nieocenione usługi &#8211; dzięki ^TomaszTopa :) ), tyle żeby wysyłał codziennie lisię prywatnych i kierowanych do mnie statusów na maila. Prosta dość sprawa, trzeba tylko do tego zasiąść ;) Ale nadszedł ten dzień, i [...]]]></description>
			<content:encoded><![CDATA[<p>Jakiś czas temu chciałem pobawić się <a href="http://blip.pl">Blip!</a>em za pomocą <a href="http://python.org">Python</a>a. Ot, mam w planach zrobienie sobie coś a&#8217;la <a href="http://szmerybajery.pl/sekretarka/">Sekretarka</a> (która oddaje nieocenione usługi &#8211; dzięki <a href="http://tomasztopa.blip.pl">^TomaszTopa</a> :) ), tyle żeby wysyłał codziennie lisię prywatnych i kierowanych do mnie statusów na maila. Prosta dość sprawa, trzeba tylko do tego zasiąść ;) Ale nadszedł ten dzień, i się zmusiłem. Jako, że wiedziałem że do Blip!a istnieją aż dwie biblioteki napisane w Pythonie (<a href="http://blip.wikidot.com/aplikacje">lista różnych aplikacji</a> znajduje się na <a href="http://blip.wikidot.com/">Blip!owym wiki</a>), to po prostu uznałem że skorzystam z którejś z nich&#8230; Ech, za dobrze by było. Żadna z nich nie jest na tyle kompletnym rozwiązaniem, żeby jej w normalnych warunkach użyć. Oczywiście nie mam pretensji do ich autorów &#8211; stworzyli narzędzie którego potrzebowali, i podzielili się nim ze światem, czyli jest OK :)</p>
<p>Jednak to spowodowało na razie zarzucenie moich planów o Pythonowej Emailowej Sekretarce ™ ;) Owszem, również mógłbym napisać w sumie dwa polecenie do pobierania statusów kierowanych i prywatnych (<em>directed_messages</em> i <em>private_messages</em>) ale ja lubię kompleksowe rozwiązania &#8211; tak samo jak dla <a href="http://wp-blip.googlecode.com">WP-Blip!</a>a napisałem BlipApi.php :)</p>
<p>Jest w tej chwili jeden drobny błąd (zauważony przez <a href="http://mrk.blip.pl">^mrk</a> &#8211; <a href="http://mrk.jogger.pl">jego blog</a>, dzięki :) ) związany z tym, że podczas testowania siedziałem w folderze gdzie są wszystkie pliki bilbioteki, i tak jakoś było łatwiej&#8230; no i w tej chwili nie działa to poprawnie jako osobny moduł Pythona tylko jak luźne pliki które gdzieś w PYTHONPATH trzeba umieścić ;) Błąd ten, jako że zaczynam dochodzić do się, niedługo postaram się naprawić oczywiście, być może zgłoszę też bibliotekę do <a href="http://pypi.python.org/pypi">Python Package Index</a>. A na razie zapraszam do pobierania: <a href="http://code.google.com/p/blipapi/downloads/list?can=2&#038;q=.py">blipapi.googlecode.com</a>, używania i <a href="http://code.google.com/p/blipapi/issues/list">zgłaszania problemów i/lub nowych featur</a> :)</p>
]]></content:encoded>
			<wfw:commentRss>http://urzenia.net/424/blipapipy-00203/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WP-Blip! 0.3.2</title>
		<link>http://urzenia.net/378/wp-blip-032/</link>
		<comments>http://urzenia.net/378/wp-blip-032/#comments</comments>
		<pubDate>Fri, 22 Aug 2008 23:01:37 +0000</pubDate>
		<dc:creator>MySZ</dc:creator>
				<category><![CDATA[blip]]></category>
		<category><![CDATA[bliposfera]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://urzenia.net/?p=378</guid>
		<description><![CDATA[Mały bugfix release (zgłoszony przez WPNinja): W przypadku gdy nie można zapisać pliku z cache do katalogu ustawionego jako zmienna $wp_blip_cacheroot, próbuje zapisać do systemowego katalogu tymczasowego (o ile się uda takowy znaleźć). Gdy także i ta operacja się nie powiedzie, zostanie rzucony E_USER_NOTICE z informacją o problemie, a wtyczka po prostu nie będzie korzystała [...]]]></description>
			<content:encoded><![CDATA[<p>Mały bugfix release (zgłoszony przez <a href="http://wpninja.pl/blip-i-wordpress/">WPNinja</a>): W przypadku gdy nie można zapisać pliku z cache do katalogu ustawionego jako zmienna <code>$wp_blip_cacheroot</code>, próbuje zapisać do systemowego katalogu tymczasowego (o ile się uda takowy znaleźć). Gdy także i ta operacja się nie powiedzie, zostanie rzucony <code>E_USER_NOTICE</code> z informacją o problemie, a wtyczka po prostu nie będzie korzystała z funkcji cacheowania wpisów.</p>
<p>Do pobrania z <a href="http://code.google.com/p/wp-blip/downloads/list">GoogleCode</a>. Jak zawsze proszę o informacje i uwagi nt działania wtyczki, a także ucieszyłbym się z informacji że ktoś gdzieś moich wypocin używa :)</p>
]]></content:encoded>
			<wfw:commentRss>http://urzenia.net/378/wp-blip-032/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WP-Blip! 0.3</title>
		<link>http://urzenia.net/371/wp-blip-03/</link>
		<comments>http://urzenia.net/371/wp-blip-03/#comments</comments>
		<pubDate>Thu, 10 Jul 2008 18:38:03 +0000</pubDate>
		<dc:creator>MySZ</dc:creator>
				<category><![CDATA[blip]]></category>
		<category><![CDATA[bliposfera]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://urzenia.net/?p=371</guid>
		<description><![CDATA[Kolejna odsłona WP-Blip!a :) Tym razem jeden bugfix (no, powiedzmy że fix), i jedna zmiana: możliwość formatowania daty dodania statusu (via komentarz Julka) naprawione linkowanie tagów i userów &#8211; teraz łapie poprawnie polskie znaczki. Może nie do końca poprawnie działać jeśli kodowanie znaków jest inne niż UTF-8, proszę wtedy dać znać, mam wrażenie że coś [...]]]></description>
			<content:encoded><![CDATA[<p>Kolejna odsłona WP-Blip!a :) Tym razem jeden bugfix (no, powiedzmy że fix), i jedna zmiana:</p>
<ul>
<li>możliwość formatowania daty dodania statusu (via <a href="http://urzenia.net/370/wp-blip-02/#comment-33358">komentarz Julka</a>)</li>
<li>naprawione linkowanie tagów i userów &#8211; teraz łapie poprawnie polskie znaczki. Może nie do końca poprawnie działać jeśli kodowanie znaków jest inne niż UTF-8, proszę wtedy dać znać, mam wrażenie że coś źle przemyślałem ;)</li>
</ul>
<p>Standardowo proszę o komentarze pod tym wpisem, lub na <a href="http://urzenia.net/email">email</a> :) A nowa wersja pluginu jest do <a href="http://code.google.com/p/wp-blip/downloads/list?can=2&#038;q=0.3&#038;colspec=Filename+Summary+Uploaded+Size+DownloadCount">pobrania na Google Code</a>.</p>
<p><ins datetime="2008-07-10T18:58:21+00:00">UPDATE:</ins></p>
<p>Już nowa wersja &#8211; 0.3.1 ;)</p>
<ul>
<li>fix: pliterki w tagach teraz działają lepiej</li>
<li>fix: myślnik w tagach też działa lepiej</li>
<li>add: linki we wpisach są obejmowana tagiem &lt;a /&gt;</li>
</ul>
<p>Do pobrania tradycyjnie na <a href="http://code.google.com/p/wp-blip/downloads/list?can=2&#038;q=0.3.1&#038;colspec=Filename+Summary+Uploaded+Size+DownloadCount">GoogleCode</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://urzenia.net/371/wp-blip-03/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>WP-Blip! 0.2</title>
		<link>http://urzenia.net/370/wp-blip-02/</link>
		<comments>http://urzenia.net/370/wp-blip-02/#comments</comments>
		<pubDate>Mon, 07 Jul 2008 05:54:52 +0000</pubDate>
		<dc:creator>MySZ</dc:creator>
				<category><![CDATA[blip]]></category>
		<category><![CDATA[bliposfera]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://urzenia.net/?p=370</guid>
		<description><![CDATA[Nowa wersja plugina do WordPressa pokazującego statusy z Blip!a. Zmiany: update BlipApi.php do nowej wersji linkowanie tagów i użytkowników dodanie pliku README z podstawową dokumentacją Zainteresowanych zapraszam ściągania i aktualizowania :)]]></description>
			<content:encoded><![CDATA[<p>Nowa wersja plugina do <a href="http://wordpress.org/">WordPress</a>a pokazującego statusy z <a href="http://blip.pl">Blip!</a>a. Zmiany:</p>
<ul>
<li>update BlipApi.php do nowej wersji</li>
<li>linkowanie tagów i użytkowników</li>
<li>dodanie pliku README z podstawową dokumentacją</li>
</ul>
<p>Zainteresowanych zapraszam <a href="http://code.google.com/p/wp-blip/downloads/list">ściągania i aktualizowania</a> :)</p>
]]></content:encoded>
			<wfw:commentRss>http://urzenia.net/370/wp-blip-02/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>BlipApi.php 0.02.5</title>
		<link>http://urzenia.net/368/blipapiphp-0025/</link>
		<comments>http://urzenia.net/368/blipapiphp-0025/#comments</comments>
		<pubDate>Sun, 25 May 2008 12:46:20 +0000</pubDate>
		<dc:creator>MySZ</dc:creator>
				<category><![CDATA[blip]]></category>
		<category><![CDATA[blipapi]]></category>
		<category><![CDATA[bliposfera]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://urzenia.net/?p=368</guid>
		<description><![CDATA[Kilka dni temu Tomasz Tybulewicz (http://tybulewicz.com/) podesłał mi wersję BlipApi.php z dodaną obsługą operacji na obrazkach, jakie zaczęło oferować Blip!owe API :) Tomek równocześnie dołączył do &#8220;zespołu&#8221; tworzącego i rozwijającego BlipApi, które obecnie jest tylko w wersji PHP, a docelowo, o ile czas pozwoli, pojawi się w jeszcze kilku językach. Nie będę na razie mówił [...]]]></description>
			<content:encoded><![CDATA[<p>Kilka dni temu Tomasz Tybulewicz (<a href="http://tybulewicz.com/">http://tybulewicz.com/</a>) podesłał mi wersję BlipApi.php z dodaną obsługą operacji na obrazkach, jakie zaczęło oferować <a href="http://blip.pl">Blip!</a>owe API :) Tomek równocześnie dołączył do &#8220;zespołu&#8221; tworzącego i rozwijającego BlipApi, które obecnie jest tylko w wersji PHP, a docelowo, o ile czas pozwoli, pojawi się w jeszcze kilku językach. Nie będę na razie mówił w jakich, bo to dość niepewna przyszłość ;)</p>
<p>Nową wersję można pobrać ze specjalnie utworzonego w tym celu projektu na <a href="googlecode.com">Google Code</a>: <a href="http://blipapi.googlecode.com">blipapi.googlecode.com</a> (jeśli ktoś kojarzy projekt blipapi-php na Google Code, to niech wymaże go ze swoich bookmarków, został usunięty).</p>
]]></content:encoded>
			<wfw:commentRss>http://urzenia.net/368/blipapiphp-0025/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>WP Blip! v.0.1</title>
		<link>http://urzenia.net/353/wp-blip-v01/</link>
		<comments>http://urzenia.net/353/wp-blip-v01/#comments</comments>
		<pubDate>Wed, 02 Jan 2008 01:30:40 +0000</pubDate>
		<dc:creator>MySZ</dc:creator>
				<category><![CDATA[blip]]></category>
		<category><![CDATA[bliposfera]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://urzenia.net/353/wp-blip-v01/</guid>
		<description><![CDATA[Jestem na fali: w ciągu całej przerwy świątecznej (dla mnie to okres od 22.12.2007 do 2.01.2008 włącznie) wklepałem całe mnóstwo (kilka tysięcy) linii kodu. Trochę firmowych, trochę prywatnych (nie publikowanych), a trochę (jak te związane z Blip!em) publicznych. Właśnie skończyłem upublicznianie pluginu do WordPressa do wyświetlania ostatnich statusów z Blip!a. Jakaś dokumentacja pojawi się niedługo [...]]]></description>
			<content:encoded><![CDATA[<p>Jestem na fali: w ciągu całej przerwy świątecznej (dla mnie to okres od 22.12.2007 do 2.01.2008 włącznie) wklepałem całe mnóstwo (kilka tysięcy) linii kodu. Trochę firmowych, trochę prywatnych (nie publikowanych), a trochę (jak te związane z <a href="http://blip.pl">Blip!</a>em) publicznych. Właśnie skończyłem upublicznianie pluginu do <a href="http://wordpress.org">WordPress</a>a do wyświetlania ostatnich statusów z Blip!a.</p>
<p>Jakaś dokumentacja pojawi się niedługo na stronie projektu (<del datetime="2008-05-25T12:49:03+00:00"><a href="http://repo.urzenia.net/PHP:WP_Blip!">repo.urzenia.net/PHP:WP_Blip!</a></del><ins datetime="2008-05-25T12:49:03+00:00"><a href="http://wp-blip.googlecode.com">wp-blip.googlecode.com</a></ins>), w tej chwili sam plugin można pobrać ze strony na Google Code (<a href="http://code.google.com/p/wp-blip/">code.google.com/p/wp-blip</a>).</p>
<p>Krótka instrukcja obsługi:</p>
<ul>
<li>pobrać plik z Google Code, rozpakować go w katalogu<br />
WORDPRESS_ROOT/wp-content/plugins (zostanie utworzony katalog<br />
wp-blip)</li>
<li>w panelu administracyjnym WordPressa uaktywnić plugin</li>
<li>w Options->WP Blip! ustawić login i hasło do swojego konta w Blip!ie (także kilka innych opcji)</li>
<li>gdzieś w szablonie dodać wywołanie funkcji:
<pre><code>&lt;?php
if (function_exists ('wp_blip')) { wp_blip("\n", 1); }
?&gt;</code></pre>
</li>
<p>Wszelkie uwagi mile widziane :) Można je zostawić w komentarzach do tego wpisu, lub dowolną inną metodą (kilka metod kontaktu ze mną opisanych jest na podstronie <a href="http://urzenia.net/kontakt/">urzenia.net/kontakt</a>).</p>
]]></content:encoded>
			<wfw:commentRss>http://urzenia.net/353/wp-blip-v01/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>BlipApi.php 0.02.4</title>
		<link>http://urzenia.net/352/blipapiphp-0024/</link>
		<comments>http://urzenia.net/352/blipapiphp-0024/#comments</comments>
		<pubDate>Sat, 22 Dec 2007 00:36:39 +0000</pubDate>
		<dc:creator>MySZ</dc:creator>
				<category><![CDATA[blip]]></category>
		<category><![CDATA[bliposfera]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programowanie]]></category>

		<guid isPermaLink="false">http://urzenia.net/352/blipapiphp-0024/</guid>
		<description><![CDATA[Twórcy Blip!a wydali wersję 0.02 API, więc zrobiłem co w mojej mocy aby skończyć moją PeHaPową bilbiotekę do tegoż ;) Zmian dużo, do wersji API 0.01 była ona mocno testowa, i w sumie nie jest poprawnie zrobiona, są w niej błędy etc, których nie zamierzam już poprawiać. Wersja 0.02.4 niesie z sobą pełną obsługę protokołu, [...]]]></description>
			<content:encoded><![CDATA[<p>Twórcy <a href="http://blip.pl">Blip!</a>a wydali <a href="http://www.blip.pl/api-0.02.html">wersję 0.02 API</a>, więc zrobiłem co w mojej mocy aby skończyć moją PeHaPową bilbiotekę do tegoż ;) Zmian dużo, do wersji API 0.01 była ona mocno testowa, i w sumie nie jest poprawnie zrobiona, są w niej błędy etc, których nie zamierzam już poprawiać. Wersja 0.02.4 niesie z sobą pełną obsługę protokołu, wykorzystując wszystko co producenci dali, szczegóły w oficjalnej dokumentacji Blip!a.</p>
<p>Szczegóły numeracji biblioteki: pierwszą część stanowi wersja API (w tym wyapdku 0.02), drugą &#8211; odsłona samej biblioteki (w tym wypadku 4).</p>
<p>BlipApi.php można używać na dwa sposoby:</p>
<ol>
<li>
<p>wywołując metodę <code>BlipApi::execute()</code>, gdzie pierwszym parametrem jest nazwa komendy do wykonania (spis komend w oficjalnej dokumentacji, jedyną różnicą jest <code>dirmsg</code> zamiast <code>directed_messages</code>), a następnie dostępne parametry metody (szczegóły w pliku klasy i w oficjalnej dokumentacji Blip!a), np.:</p>
<pre><code>$bapi = new BlipApi ('login', 'haslo');
$bapi->connect ();
$bapi->execute ('update_read', null, 'mysz');</code></pre>
<p>Pobierze ostatnie 10 statusów użytkownika mysz.</p>
</li>
<li>
<p>wywołując komendę jako konkretną metodą obiektu BlipApi:</p>
<pre><code>$bapi->update_read (null, 'mysz');</code></pre>
<p>Powyższe dwa wywołania są sobie równoważne.</p>
</li>
</ol>
<p>Jeśli ktoś znajdzie jakieś błędy, lub ma uwagi co do samej biblioteki, proszę o komentarze tutaj, lub kontakt mailowy: <a href="http://urzenia.net/email/">urzenia.net/email</a>. Z góry dziękuję za feedback ;)</p>
<p><del datetime="2008-03-18T09:45:21+00:00">Bibliotekę można pobrać/obejrzeć z: <a href="http://repo.urzenia.net/files/blipapi-0.02.phps">repo.urzenia.net/files/blipapi-0.02.phps</a></del>. W tej chwili nie ma skąd pobrać samej biblioteki, jako że usunąłem repo.urzenia.net. Dołączona jest za to do pakietu <a href="http://code.google.com/p/wp-blip/">WP Blip!</a>, skąd można ją &#8220;ręcznie&#8221; wyciągnąć :) Przepraszam za kłopot :)</p>
]]></content:encoded>
			<wfw:commentRss>http://urzenia.net/352/blipapiphp-0024/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>CURLowe zagwozdki</title>
		<link>http://urzenia.net/350/curlowe-zagwozdki/</link>
		<comments>http://urzenia.net/350/curlowe-zagwozdki/#comments</comments>
		<pubDate>Sun, 16 Dec 2007 02:19:57 +0000</pubDate>
		<dc:creator>MySZ</dc:creator>
				<category><![CDATA[blip]]></category>
		<category><![CDATA[curl]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://urzenia.net/350/curlowe-zagwozdki/</guid>
		<description><![CDATA[Od kilku tygodni bawię się po trochu CURLem, w ramach tworzenia PeHaPowej biblioteki do Blip!a. Poniżej kilka zagwozdek, na które ciężko znaleźć sensowną odpowiedź w google, albo ja nie wiem jak pytać&#8230; Jak poprawnie wykonać zapytanie PUT? (aka: metoda PUT i &#8220;select/poll returned error&#8221;) Nad tym spędziłem najwięcej czasu. Kombinowałem na mnóstwo sposobów. Kluczem do [...]]]></description>
			<content:encoded><![CDATA[<p>Od kilku tygodni bawię się po trochu CURLem, w ramach tworzenia PeHaPowej biblioteki do <a href="http://blip.pl">Blip!</a>a. Poniżej kilka zagwozdek, na które ciężko znaleźć sensowną odpowiedź w google, albo ja nie wiem jak pytać&#8230;</p>
<ol>
<li>
<p>Jak poprawnie wykonać zapytanie PUT? (aka: metoda PUT i &#8220;select/poll returned error&#8221;)</p>
<p>Nad tym spędziłem najwięcej czasu. Kombinowałem na mnóstwo sposobów. Kluczem do sukcesu okazało się podejrzenie wersji konsolowej CURLa z dokładnie takim samym zapytaniem, jakie wysyłałem za pomocą skryptu PHP. W skrócie: należy wymusić na CURLu HTTP 1.0, za pomocą ustawienia opcji:</p>
<pre><code>curl_setopt ($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0); # gdzie $ch jest obiektem utworzonym za pomocą curl_init ()</code></pre>
<p>Po tej operacji zapytania śmigają jak należy (dodam tylko, że czasem zamiast &#8220;select/poll returned error&#8221; dostawałem &#8220;connection reset by peer&#8221;).</p>
</li>
<li>
<p>Przy rozwiązywaniu powyższego problemu, pomogła mi mała sztuczka. Mianowicie musiałem podejrzeć jakie nagłówki wysyła CURL. Normalnie PHPowy CURL nie zamierza pokazać co jest wysyłane <del datetime="2007-12-16T16:43:21+00:00">i odbierane</del> (Rozpisałem się &#8211; oczywiście nagłówki odbierane bez problemu można zobaczyć. Dzięki, Arek ;) ), bo i po co&#8230; Ja posłużyłem się tutaj specjalnie na tą okazję utworzonym skryptem PHP z dokładnie wyizolowanym &#8216;testcase&#8217;. Tutaj, po zaimplementowaniu opcji:</p>
<pre><code>curl_setopt ($ch, CURLOPT_VERBOSE, 1);</code></pre>
<p>i odpaleniu skryptu z konsoli, grzecznie została mi pokazana komunikacja <ins datetime="2007-12-16T16:43:21+00:00" title="uściślenie">wychodząca</ins> z serwerem, co było kluczem do rozwiązania problemu (okazało się że był wysyłany dodatkowy nagłówek <code>Expect</code> należący do HTTP 1.1, a po wrzuceniu tego w google znalazłem informacje które mnie nakierowały na właściwy trop).</p>
</li>
<li>
<p>Jak wysłać plik POSTem?</p>
<p>Ech, w sumie rozwiązanie jest banalne, jeśli ktoś dokładniej przeczyta <a href="http://php.net/manual/en/ref.curl.php">manual na stronach PHP dotyczący CURLa</a>. Ale skoro już opisuję zagwozdki&#8230;</p>
<p>PHPowy CURL pozwala wysyłać dane na dwa sposoby (akceptowane i sprecyzowane, oczywiście, w odpowiednim RFC). Jeden to <code>x-www-form-urlencoded</code> (tak są wysyłane <em>dane</em> za pomocą webowych formularzy), drugi to <code>multi-part form-data</code> (tak są wysyłane <em>pliki</em>, także z formularzy). Normalnie dla opcji <code>CURLOPT_POSTFIELDS</code> podaje się <code>string</code> który wygląda dokładnie tak samo jak ten widoczny w URLach skryptów pehapowych (mówiąc po laicku), np. <code>a=1&#038;b=2</code> &#8211; wtedy dane są wysyłane metodą <code>x-www-form-urlencoded</code>. Aby zmusić CURLa do wysłania danych metodą <code>multi-part form-data</code>, jako parametr opcji <code>CURLOPT_POSTFIELDS</code> musimy podać tablicę. Tak, właśnie tablicę, gdzie kluczem powinne być nazwa pola (odpowiadająca temu z prawdziwego formularza), a wartością ścieżka do pliku, ale uwaga: <strong>ścieżka powinna być poprzedzona znakiem &#8220;małpy&#8221;: @</strong>. Czyli powinno wyglądać to tak:</p>
<pre><code>curl_setopt ($ch, CURLOPT_POSTFIELDS, array ('pole' => '@/sciezka/do/pliku.jpg'));</code></pre>
<p>Po tej operacji wysłanie pliku nie powinno być już problemem :)</p>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://urzenia.net/350/curlowe-zagwozdki/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Blip!</title>
		<link>http://urzenia.net/347/blip/</link>
		<comments>http://urzenia.net/347/blip/#comments</comments>
		<pubDate>Mon, 19 Nov 2007 23:36:46 +0000</pubDate>
		<dc:creator>MySZ</dc:creator>
				<category><![CDATA[blip]]></category>
		<category><![CDATA[bliposfera]]></category>
		<category><![CDATA[class]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[php5]]></category>

		<guid isPermaLink="false">http://urzenia.net/347/blip/</guid>
		<description><![CDATA[Jakiś czas temu zacząłem się bawić Blip!em. Wstawiłem sobie nawet na główną stronę myGeeBloga wklejkę z ostatnim statusem ;) Ichnich wklejki sa jak dla mnie kiepskie (flasha nie lubię, a wersja jsowa pozwala na pobranie tylko ostatniego statusu), więc pomyślałem o pluginie do WordPressa. Żeby móc to urzeczywistnić, potrzeba mi jakiejś klasy do obsługi tego [...]]]></description>
			<content:encoded><![CDATA[<p>Jakiś czas temu <a href="http://mysz.blip.pl">zacząłem się</a> bawić <a href="http://blip.pl">Blip!</a>em. Wstawiłem sobie nawet na główną stronę myGeeBloga wklejkę z ostatnim statusem ;) Ichnich wklejki sa jak dla mnie kiepskie (flasha nie lubię, a wersja jsowa pozwala na pobranie tylko ostatniego statusu), więc pomyślałem o pluginie do <a href="http://wordpress.org">WordPress</a>a. Żeby móc to urzeczywistnić, potrzeba mi jakiejś klasy do obsługi tego &#8211; a z pomocą udostępnionego API zrobiłem sobie taką. Na razie wersja pre-alpha ;)</p>
<dl>
<dt>do podejrzenia:</dt>
<dd><a href="http://repo.urzenia.net/files/blipapi.phps">repo.urzenia.net/files/blipapi.phps</a></dd>
<dt>do pobrania:</dt>
<dd><a href="http://repo.urzenia.net/files/get.php?f=blipapi.php">http://repo.urzenia.net/files/get.php?f=blipapi.php</a></dd>
</dl>
<p>O feedback poproszę za pomoca formularza: <a href="http://urzenia.net/email/">urzenia.net/email</a> lub na liście blip-api: <a href="http://groups.google.com/group/blip-devel/browse_thread/thread/3096e1724d036f55">groups.google.com/group/blip-devel/browse_thread/thread/3096e1724d036f55</a>.</p>
<p><ins datetime="2007-11-21T21:39:16+00:00">UPDATE:</ins> wprowadziłem kilka zmian w klasie blipapi, częściowo kosmetycznych, częściowo optymalizacyjnych. Do pobrania pod wymienionymi wyżej adresami :)</p>
]]></content:encoded>
			<wfw:commentRss>http://urzenia.net/347/blip/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
