php base64 iphone картинка для веб-сервиса

Мне нужна ваша помощь, пожалуйста, и я не нашел ответов на мою проблему.

Я хочу сделать снимок (или взять его из галереи) на iphone / ipad, а затем закодировать изображение в строку base64 с помощью php и отправить строку base64 в веб-службу.

Если я попробую это на ПК, все в порядке.
если я хочу сделать это на ipad, кажется, что ничего или неправильная строка base64 отправлена ​​в веб-сервис, но я понятия не имею, почему или так ?!

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;
}
}

Любые идеи, почему это не работает на Ipad / Iphone?

Я надеюсь, что кто-нибудь может мне помочь.

1

Решение

Я думаю, что у iPhone / iPad есть некоторые проблемы с capture=camcorder,

Пожалуйста, попробуйте это:

<input type="file" name="datei" accept="image/*;capture=camera">

вместо

<input type="file" name="datei" accept="capture=camcorder">

Для получения дополнительной информации проверьте это:

http://www.html5rocks.com/de/tutorials/getusermedia/intro/

0

Другие решения

РЕШИТЬ

Проблема в том, что у службы SOAP был максимальный размер файлов для 1 МБ!
Это была проблема, почему я не могу загрузить строки Base64 размером более 1 МБ!

Теперь мы увеличиваем максимальный размер для файлов до 10 МБ, и теперь это работает!

И это было причиной, почему я не могу загрузить некоторые картинки, потому что некоторые картинки были больше чем 1 МБ в строке base64.

Спасибо за помощь всем!

0

По вопросам рекламы [email protected]