4

こんにちは、div にダウンロードするような画像を保存し、右クリックして画像として保存できるようにプロジェクトを完了しましたが、そのようにしたくありません。上記とは異なり、画像を直接ダウンロードしたいと同時に、SQLサーバーとmvc3 Webアプリケーションを使用してデータベースに画像パスを保存したい.データベースに保存する方法 サーバー側のコードを使用する必要があります。私はそれをグーグルで検索しましたが、関連する答えが見つかりませんでした。私が尋ねたことは可能ですか?前もって感謝します。

以下のコードは画像を保存するためのもので、変更する必要があります。

function downloadCanvas() {
    var canvas = stage.children[0].canvas;
    var oImgPNG = Canvas2Image.saveAsPNG(canvas, true);
    document.body.appendChild(oImgPNG);
  }

Google で検索すると、誰もが php コードを使用しています。html5 で php コードを使用する方法。

4

2 に答える 2

1

Ajax経由でサーバーにデータを送信し、画像として保存します。

var canvasData = canvas.toDataURL("image/png");
var ajax = new XMLHttpRequest();
ajax.open("POST",'save.php',false);
ajax.setRequestHeader('Content-Type', 'application/upload');
ajax.send(canvasData); 

PHP、

<?php 
if (isset($GLOBALS["HTTP_RAW_POST_DATA"]))
{
    // Get the data
    $imageData=$GLOBALS['HTTP_RAW_POST_DATA'];


    $filteredData=substr($imageData, strpos($imageData, ",")+1);

    $unencodedData=base64_decode($filteredData);

    $random_digit=md5(uniqid(mt_rand(), true));

    $fp = fopen( 'yourfolder/new'.$random_digit.'.png', 'wb' );
    fwrite( $fp, $unencodedData);
    fclose( $fp );
    //Now save the path in database!
}
?>

画像は「yourfolder/new'。$random_digit。'。png'」に保存されます。同じ質問へのリンク、

JavaScriptからサーバーに写真を送信する

于 2013-02-22T07:57:06.977 に答える
0

次のように、Webサーバーへのajax呼び出しを使用して、画像データをサーバーに送信する必要があります。

http://www.dotnetfunda.com/articles/article1662-saving-html-5-canvas-as-image-on-the-server-using-aspnet.aspx

次に、画像のサイズに応じて、画像のURLをSQL Server(小さい画像の場合)に保存するか、データを保存します。あなたがあなたの選択をするのを助けるためにこれを読んでください:画像のURLを保存するか、SQLデータベースに画像ファイルを保存しますか?

于 2013-02-20T09:02:28.567 に答える