2

ボタンを押して、JavaScript から PHP ページに png 画像を渡そうとしています。しかし、「Request-URI Too Large」というエラーが返されます。以下は私のコードです:

myJavaScript.js

                var w = window.open(); 
                var dom = w.document;
                var a = canvas[0].toDataURL("image/png"); 
                dom.write('< input type="button" value="Submit" onclick="location.href=\'result.php?a=' + a + '\'" ></input>');  

結果.php

               <?php

                $aImg= $_GET["a"];

                $to = "abc@hotmail.com";
                $subject = "Sending an image to email";
                $body = '<img src="' .$aImg. '" alt="This is an image" />';
               if (mail($to, $subject, $body)) 
                              {   
                       echo("Message successfully sent!");  
                               } 
                 else {   
                   echo("Message delivery failed...");
                      }  
              ?>

ただし、「要求された URL の長さが、このサーバーの容量制限を超えています」が返されます。

4

2 に答える 2

8

代わりにポストを使用してください。

dom.write('<form method="post" action="result.php"><input type="a" value="'+a+'" /><input type="submit" value="Submit" /></form>')

GET メソッドを使用して変数を渡すには URL に変数を配置する必要があるため、大きな変数の場合、URL の最大長に達します。POST には制限がないか、少なくともはるかに大きな制限があります。

于 2012-06-25T06:01:12.390 に答える
3

POSTの代わりにを使用するように変更しますGET。使用するGETと、ビッグ データの URL の長さ制限を超えます。

于 2012-06-25T06:00:57.907 に答える