私はあなたの助けを必要とし、私は私の問題のためのいくつかの答えを見つけていない。php base64 iphone picture to webservice
iphone/ipadで画像を撮りたい(またはギャラリーから撮りたい)画像をphpでbase64文字列にエンコードし、base64文字列をwebserviceに送信します。
私はPCでそれを試しても、すべてが問題ありません。 もし私がipadでこれをやりたいのであれば、何もないか間違ったbase64文字列がwebserviceに送られているのですが、なぜかそんなことは考えていませんか?
picture.php
<form action="picture.php?action=upload" method="post" enctype="multipart/form-data">
<input type="file" name="datei" accept="capture=camcorder">
<br/><br/>
<input type="submit" value="up">
</form>
<?
if(isset($_GET['action']))
{
$tmp_name = $_FILES["datei"]["tmp_name"];
$name = $_FILES["datei"]["name"];
$name = substr($name,0,-4);
$name.="_".time().".jpg";
move_uploaded_file($tmp_name, "upload/".$name);
$content = file_get_contents ("upload/".$name);
$imageBase = base64_encode($content);
$success = savePicture($imageBase);
}
関数savePicture()
function savePicture($pic_base64)
{
ini_set("soap.wsdl_cache_enabled", "0");
$pageURL = 'http://....';
$page = new NTLMSoapClient($pageURL);
$params = array("pRecordID" => "1",
"pFieldID" => 70000,
"pUserID" => "153",
"pContent" => $pic_base64
);
$result = $page->SetBLOBValue($params);
if($result->return_value != "ERROR")
{
return true;
}
else
{
return false;
}
}
これはアプリ/ iPhone上で動作しなかった理由を任意のアイデア?
誰でも私を助けてくれることを願っています。
このためTHX、私は問題を解決しない:/ 私は写真 お知らせアップロードした後の通知を取得somtetimes:行74に....で非オブジェクトのprobertyをgehtしようとすると、ライン74 if($ result-> return_value!= "ERROR") だから、私はwebserviceに間違ったデータを送ったと思いますか?またはbase64は正しくありませんか? – Mark
'$ pic_base64'は' savePicture'関数の中で大丈夫ですか? –
はいそれはsavePicture関数で大丈夫です! たとえば、私はsavePictureでエコーを作成し、savePictureを呼び出した後、文字列は同じように見えますが、文字列内の文字はチェックされません。 – Mark