0

iPad のローカル html ファイルにキャプチャされたデータをアップロードしてサーバーに保存しようとしています。

私はこれを見つけました:Ajax経由で外部ファイルにデータを送信する

私が理解できる限り、次のような方法で情報を送信する方法はありませ。iPad の html からですね。

だから、誰かがこれを行うためのトリックを知っているかどうか知りたいだけです。ありがとう!

4

2 に答える 2

1

数週間後、これは私が達成できたものです。

1.-データ(キャンバスから生成された画像)を送信する関数:

function sendImageData()
    {
        var filename = $("#filename").val().trim();
   if(filename == ''){
    alert("File name is needed");
    return;
   }

        var uploadCanvas = $("#uploadCanvas");
        var canvasData = uploadCanvas[0].toDataURL("image/png");
        var debugConsole= $("#debugConsole");
        debugConsole.val(canvasData);

      $.ajax({
            type: 'POST',
            url: "http://yourremoteserver.com/canvas/save.php",
            data: {
        canvasData:canvasData,
        filename:filename
    }
        }).done(function() {
                    alert("saved: " + filename + ".png");// THIS IS NOT WORKING YET.
                }
                );
    }

2.-データを受信して​​保存するPHP:

<?php
$imagen = $_POST['canvasData'];
$filename = $_POST['filename'];

if (isset($imagen)){
    $imageData=$imagen;
    $filteredData=substr($imageData, strpos($imageData, ",")+1);
    $unencodedData=base64_decode($filteredData);
    $fp = fopen( $filename.'.png', 'wb' );
    fwrite( $fp, $unencodedData);
    fclose( $fp );
}
?>

誰かが.done機能を動作させるのを手伝ってくれるなら(htmlファイルはipadにあり、phpはサーバーにあることを思い出してください)私に知らせてください。乾杯。

于 2012-08-07T00:51:09.720 に答える
0

この目的でPluploadを使用しました。Flash、Silverlight、および html5 を自動的に切り替えるため、ほぼすべてのブラウザー (iPad のサファリを含む) で動作するはずです。基本的に、生成された ID を使用してファイルを処理スクリプトにアップロードします (ID を生成します)。次に、アップロードが完了したら、別のページをポーリングして、アップロードされたデータを取得できます。

編集:あなたの投稿を再読すると、ユーザーがファイルを選択する必要があり、それが正確に得られているかどうかわからないため、これがどれほど適切かはわかりません。

于 2012-07-14T16:26:38.127 に答える