2016-03-25 9 views
1

この場合、iPhone 6plusとSamsung Androidで「既存の写真」を選択して画像をアップロードすると、ExifをPHPで使用する理由がわかりません。 GPSデータを含むすべてのexifデータを取得します。しかし、「写真を撮って」同じプロセスでアップロードすると、Exifデータが切り捨てられ、最終的にはGPSデータに到達しなくなります。 "... ExifImageLength"] => int(2448) "の最後に停止します。アップロードするために電話で写真を撮るときにExifデータが切り取られる

ここには、アップロードされた画像のサイズを変更してからのデータを保存するためのより大きなスクリプトの一部ですフォームとアップロードされた画像のExifデータ。しかし、私は唯一のテストとして、以下のコードを使用していますが、それはまだそれをしない。

if (empty($_FILES['image']['name'])) { 
     echo 'Please choose an image!'; 
} else { 
    $temp = $_FILES['image']['tmp_name']; 
    $info = @exif_read_data($temp); 
    var_dump($info); 
} 

私はすべてが「とら」の両方を持つだけで結構ですXAMPPを使用して、ローカル開発サーバーを持っていますしかし、私はGoDaddy Virtual Server Linuxでこの切り詰められた問題を抱えています。

+0

'@'を離してもエラーになりますか? – chris85

+0

... using => http://php.net/manual/en/function.error-reporting.php –

+0

エラー報告を有効にして「@」を削除します。それでもエラーは発生しません。私は... ini_set( 'display_errors'、1);を使用します。ini_set( 'display_startup_errors'、1); error_reporting(E_ALL | E_STRICT); – James

答えて

0

これについての長い研究の後、誰かがt o写真をウェブサイトにアップロードするときに写真を撮るときは、基本的なEXIFデータのみが保存され、GPSデータなどの追加情報は保存されません。「ライブラリから選択」すると、データは写真とともに保存されます既に携帯端末に取り込まれて保存されていました。私は、ウェブサイトの「画像を選択」フォームの入力をクリックした後で写真を撮ると、モバイル機器に保存されないことに気付きました。それが余分なデータが記録されない理由です。彼らが携帯デバイスに保存される写真を撮るときだけ、余分なEXIFデータが保存されます。バイパスすると保存されず、アップロードのためにウェブサイトにまっすぐに進みます。私は写真をサーバーに保存しておき、余分なEXIF用にスクリプトを実行してもそのような情報は記録されませんでした。私はあなたが写真のマップ座標を取得するためにアップロードすることができる他の多くのウェブサイト上でこれをテストし、切り詰められた結果は私が作成したスクリプトと同様にそれらと一致しています。私は訂正するつもりですが、多くの研究の後でこれが私の実験を使って思いつくことができる唯一の結論です。今のところ、私が提案したもの以外の説明はどこにもありません。私はこれを私自身の質問に対する答えとして置き、専門家以上の人が私の反論や肯定よりも歓迎します。

関連する問題