将html2canvas图像上传到数据库

时间:2016-03-13 02:48:39

标签: javascript php mysql html2canvas

是否可以将图像html2canvas上传到数据库。 当我单击“保存”时,它会将我重定向到save.php,在那里我可以看到我制作的屏幕截图,查看图像,并在本地服务器上本地查看图像。

主要问题是,可以制作一个表单,在save.php上我可以将图像作为随机数(等32245652226225.jpg)保存到特定文件夹中,并将值插入数据库中,其值为: img_name,img_date

然后我可以从数据库中检索所有图像,并按日期对它们进行排序。 我将不胜感激任何帮助。

这是我得到的结果 result

这是我的index.php

	function capture() {
		$('#target').html2canvas({
			onrendered: function (canvas) {
                //Set hidden field's value to image data (base-64 string)
				$('#img_val').val(canvas.toDataURL("image/png"));
                //Submit the form manually
				document.getElementById("myForm").submit();
			}
		});
	}
<form method="POST" enctype="multipart/form-data" action="save.php" id="myForm">
	<input type="hidden" name="img_val" id="img_val" value="" />
</form>
<input type="submit" value="Sacuvaj" onclick="capture();" />

<div id="target">
  <h1>TESTING</h1>
</div>

这就是save.php

<?php
//Get the base-64 string from data
$filteredData=substr($_POST['img_val'], strpos($_POST['img_val'], ",")+1);

//Decode the string
$unencodedData=base64_decode($filteredData);

//Save the image
file_put_contents('slika.jpg', $unencodedData);
?>
<h2>Screenshoot</h2>
<table>
    <tr>
        <td>
            <a href="slika.jpg" target="blank">folder</a>
        </td>
        <td align="right">
            <a href="index.php">nazad</a>
        </td>
    </tr>
    <tr>
        <td colspan="2">
            <br />
            <br />
			<span>
			
			</span>
            <br />
<?php
//Show the image
echo $_POST['img_val'];
echo '<img class="img-responsive" src="'.$_POST['img_val'].'" />';
?>
        </td>
    </tr>
</table>
<style type="text/css">
body, a, span {
	font-family: Tahoma; font-size: 10pt; font-weight: bold;
}
img{
	width:400px;
}
</style>

1 个答案:

答案 0 :(得分:0)

答案是肯定的;)

我的意思是,你好像已经找到了拼图:

  • 捕获客户端上的屏幕
  • 通过表单将其提交给服务器
  • 将捕获日期等元信息写入数据库,该数据库返回唯一的ID号(任意数字ID)
  • 将文件复制到文件夹中,文件名符合文件ID(并设置一些逻辑,以便在文件ID的每4位数字上创建一个新的子文件夹)
  • 有另一个脚本可以帮助您搜索图像并显示它们

如果你真的要求免费的编码服务,我很遗憾地说我无法帮助你。无论如何,对于数据库访问,有很好的教程,如果你只是缺乏关于这方面的一些基本知识。

顺便说一下。也许在服务器端渲染html甚至可能更好: Convert HTML to image in php