アップロードボタンをクリックするとRSSがPOSTされます。下記参照
titleがファイル名でdescriptionにコメントがはいっていますが、Picasaで設定したアルバムタイトルやコメントは入っていません。
参考サイト
http://code.google.com/apis/picasa/docs/web_uploader.html
ここのPHP Sampleを解析すればわかります。
$_POST[rss]の内容 <?xml version="1.0" encoding="utf-8" ?> <rss version="2.0" xmlns:photo="http://www.pheed.com/pheed/" xmlns:media="http://search.yahoo.com/msrss/"> <clientlanguage>ja</clientlanguage> <channel> <item> <title>DSCF0620.JPG</title> <description>いっぱい</description> <photo:thumbnail>http://localhost:49182/5264144ff03e8ec576d9fa4aee9978b0/thumb11.jpg</photo:thumbnail> <photo:imgsrc>http://localhost:49182/5264144ff03e8ec576d9fa4aee9978b0/image11.jpg</photo:imgsrc> <media:group> <media:content url="http://localhost:49182/5264144ff03e8ec576d9fa4aee9978b0/image11.jpg" width="1280" height="960" isDefault="true"/> <media:thumbnail url="http://localhost:49182/5264144ff03e8ec576d9fa4aee9978b0/thumb11.jpg" width="144" height="108"/> <media:content url="http://localhost:49182/5264144ff03e8ec576d9fa4aee9978b0/original11" width="1280" height="960" fileSize="259647" type="image/jpeg"/> </media:group> </item> </channel> </rss>
サンプルコードを見てみると上記のxmlからthumbnailとimgsrcを取り出してinput type=hiddenで表示しています。
この時点でサンプルでは画像が表示されているのですがアドレスはhttp://localhost:49182/とPicasa内でWEBサーバが立ち上がっているようです。
<form name='f' method='post' action='post.php'> <input type=text name=title id=title tabindex="1"> <textarea name="body" rows=5 cols=50></textarea> ↓ここで画像送信用のhiddenタグを生成する。 <input type=hidden name='http://localhost:49182/5264144ff03e8ec576d9fa4aee9978b0/thumb11.jpg?size=120'> <input type=hidden name='http://localhost:49182/5264144ff03e8ec576d9fa4aee9978b0/image11.jpgsize=640'> <input type=submit value="Publish!">; <input type=button value="Discard" onclick="location.href='minibrowser:close'"> </form>
で送信すると次のpost.phpへ行って普通に$_FILESで値を取り出す。
僕が知っているhtmlではhiddenでFILE送信できないのですが、
ついでにvalueもないし。。。
Picasa2内でミニブラウザが起動するので、そこから送信しているのでしょう。
コメントする