【发布时间】:2020-07-10 04:59:18
【问题描述】:
<?php
if(isset($_POST['submit'])){
$data=$_POST['image'];
echo $data; //echo "hello";
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
#canvas {
border: 1px solid black;
}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<!-- <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> -->
<script>
function send() {
var dataURL = canvas.toDataURL();
console.log(dataURL);
document.getElementById('image').src=dataURL;
documnet.getElementById('submit').click();
}
</script>
</head>
<body>
<canvas id="canvas"></canvas>
<button onclick="send()">Done</button>
<form action="index.php" method="post">
<input type="image" name="image" id="image" hidden >
<input type="submit" id="submit" name="submit" >
</form>
<script>
window.addEventListener("load", () => {
const canvas = document.querySelector("#canvas");
const ctx = canvas.getContext("2d");
canvas.height = window.innerHeight - ((10 * window.innerHeight) / 100);
canvas.width = window.innerWidth;
//variables
let painting = false;
function startPosition(e) {
painting = true;
draw(e);
}
function finishPosition() {
painting = false;
ctx.beginPath();
}
function draw(e) {
if (!painting) return;
ctx.lineWidth = 10;
ctx.lineCap = "round";
ctx.lineTo(e.clientX, e.clientY);
ctx.stroke();
ctx.beginPath();
ctx.moveTo(e.clientX, e.clientY);
}
//listners
canvas.addEventListener("mousedown", startPosition);
canvas.addEventListener("mouseup", finishPosition);
canvas.addEventListener("mousemove", draw);
});
</script>
</body>
</html>
首先,我使用画布在浏览器上绘制一些东西,点击完成后,该绘图将作为图像提交给表单,然后提交表单。 此表单数据被接收到同一页面并通过 post 方法检索,但在打印 post 方法时,显示没有任何输出。 有人可以帮我解决这个问题吗?我是新手
【问题讨论】:
-
您的示例有语法错误。对于这些,很难知道真正的问题是什么。
-
对;启用错误报告。关于上述评论,如果他们指的是 php,我可以(也)看到。
-
图片不能“隐藏”。有一种特定的方式来处理文件,而为了让它工作,你已经丢失了它的代码。
-
我是编码新手,有人能说一下 php 有什么问题吗?回显 Hello 以检查是否执行了内部块(发布时忘记删除)
标签: javascript php html forms file