我对使用 AJAX 的 POST 请求有一点问题。数据似乎没有存储在数据库中。当我使用 GET 而不是 POST 时,它起作用了,但问题是它发送了大量数据,因为它是来自页面上画布的图像数据。我试图打印出发送的数据的大小,以确保在发送之前它实际上是正确的(大约 10500 个字符长)。
这是 Javascript/AJAX 代码:
if(type == "DrawingData" && Drawer)
{
var CanvasData = canvas.toDataURL("image/png");
var url = "DB_Com.php";
var params = "DrawingData="+CanvasData;
xmlhttp.open("POST", url, true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.setRequestHeader("Content-length", params.length);
xmlhttp.setRequestHeader("Connection", "close");
xmlhttp.send(params);
}
这是PHP代码:
if(isset($_POST['DrawingData']))
{
$Image = mysql_real_escape_string($_POST['DrawingData']);
$query = "UPDATE BlackboardDrawing SET Data = '$Image'";
mysql_query($query) or die(mysql_error());
}
非常感谢任何帮助。谢谢!