Javascript 在数据库中保存路径(';./mywebsite/images/$newname';)
我正在尝试制作一个网站,当用户可以使用html2canvas制作一个截图,然后在截图制作完成后,用户可以将其保存到该网站。我试着遵循这一点,但失败了。它给了我这个错误: 致命错误:未捕获错误:调用未定义的函数strotoime() 在/data/web/virtuals/148842/virtual/www/save.php:9堆栈跟踪:#0 {main}在上的/data/web/virtuals/148842/virtual/www/save.php中抛出 第9行 因为我不知道如何在数据库中保存路径,因此: 使用我共享的代码保存图像时,(第行: 文件内容('img.png',$unencodedData);),有一个实际的 名为“img.png”的服务器上的图像 你所要做的就是把它搬到你想带它去的任何地方 move_upload_file()函数如下:move_upload_file('img.png', “../mywebsite/images/$newname”) 然后将新路径(“../mywebsite/images/$newname”)保存到 数据库,以便您以后可以访问它 这是我的代码: Save.phpJavascript 在数据库中保存路径(';./mywebsite/images/$newname';),javascript,php,database,image,Javascript,Php,Database,Image,我正在尝试制作一个网站,当用户可以使用html2canvas制作一个截图,然后在截图制作完成后,用户可以将其保存到该网站。我试着遵循这一点,但失败了。它给了我这个错误: 致命错误:未捕获错误:调用未定义的函数strotoime() 在/data/web/virtuals/148842/virtual/www/save.php:9堆栈跟踪:#0 {main}在上的/data/web/virtuals/148842/virtual/www/save.php中抛出 第9行 因为我不知道如何在数据库中保
<?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('img_' . strototime() . '.png', $unencodedData);
move_uploaded_file('img.png', './posters/$newname');
?>
<h2>Save the image and show to user</h2>
<table>
<tr>
<td>
<a href="img.png" target="blank">
Click Here to See The Image Saved to Server</a>
</td>
<td align="right">
<a href="index.php">
Click Here to Go Back</a>
</td>
</tr>
<tr>
<td colspan="2">
<br />
<br />
<span>
Here is Client-sided image:
</span>
<br />
<?php
//Show the image
echo '<img src="' . $_POST['img_val'] . '" />';
?>
</td>
</tr>
</table>
<style type="text/css">
body, a, span {
font-family: Tahoma; font-size: 10pt; font-weight: bold;
}
</style>
保存图像并显示给用户
以下是客户端图像:
身躯{
字体系列:Tahoma;字体大小:10pt;字体重量:粗体;
}
Index.php
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript" src="js/html2canvas.js"></script>
<script type="text/javascript" src="js/jquery.plugin.html2canvas.js"></script>
<h2>Simple Implementation of html2canvas With JavaScript and PHP</h2>
<form method="POST" enctype="multipart/form-data" action="save.php" id="myForm">
<input type="hidden" name="img_val" id="img_val" value="" />
</form>
<table>
<tr>
<td colspan="2">
<table width="100%">
<tr>
<td>
<input type="submit" value="Take Screenshot Of Div Below" onclick="capture();" />
</td>
<td align="right">
<a href="http://www.kubilayerdogan.net?p=304" style="font-family: Tahoma; font-size: 10pt; font-weight: bold;">
Documentation (Back to Site)</a>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td valign="top" style="padding: 10px;">
<b>Div:</b>
</td>
<td>
<div id="target">
<table cellpadding="10">
<tr>
<td colspan="2">
This is sample implementation
</td>
</tr>
<tr>
<td>
It can hold form values:
</td>
<td>
<input type="text" name="form_value" value="" placeholder="Try me" />
</td>
</tr>
<tr>
<td>
Simple Button Element:
</td>
<td>
<button name="my_button">
Clicking Me Useless</button>
</td>
</tr>
<tr>
<td valign="top">
Let's go with CSS:
</td>
<td>
<div id="aside">
<h3>Aside heading</h3>
<p>Duis autem vel eum iriure dolor in hendrerit!</p>
</div>
<div id="more">
<h2>My first styled page</h2>
<p>Welcome to my styled page!</p>
<p>It lacks images, but at least it has style.</p>
<p>There should be more here, but I don't know what yet.</p>
<address>
Made 5 April 2004
<br />
by myself.
</address>
</div>
</td>
</tr>
<tr>
<td>
Try Image:
</td>
<td>
<img src="soc.jpeg" alt="SOC" />
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<script type="text/javascript">
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();
}
});
}
</script>
<style type="text/css">
#target {
border: 1px solid #CCC;
padding: 5px;
margin: 5px;
}
h2, h3 {
color: #003d5d;
}
p {
color:#AA00BB;
}
#more {
font-family: Verdana;
color: purple;
background-color: #d8da3d;
}
</style>
用JavaScript和PHP简单实现html2canvas
分区:
这是一个示例实现
它可以保存表单值:
简单按钮元素:
点击我没用
让我们来看看CSS:
副标题
在亨德雷特有两个人
我的第一个样式页面
欢迎来到我的风格页面
它缺少图像,但至少有风格
这里应该还有更多,但我还不知道是什么
2004年4月5日订立
我一个人。
尝试图像:
函数捕获(){
$(“#目标”).html2canvas({
onrendered:函数(画布){
//将隐藏字段的值设置为图像数据(base-64字符串)
$('img_val').val(canvas.toDataURL(“image/png”);
//手动提交表单
document.getElementById(“myForm”).submit();
}
});
}
#目标{
边框:1px实心#CCC;
填充物:5px;
保证金:5px;
}
h2,h3{
颜色:#003d5d;
}
p{
颜色:#AA00BB;
}
#更多{
字体系列:Verdana;
颜色:紫色;
背景色:#d8da3d;
}
有人能帮我吗?您的代码第9行有一个明显的打字错误,如果您看到错误,您就会知道这一点
file_put_contents('img_' . strototime() . '.png', $unencodedData);
应该是:
file_put_contents('img_' . strtotime() . '.png', $unencodedData);
编辑:
看起来您正试图根据时间戳创建一个随机文件名,所以只需使用date(“U”)
:
file_put_contents('img_' . date("U") . '.png', $unencodedData);
你在代码的第9行有一个明显的打字错误,如果你读了这个错误,你就会知道这一点
file_put_contents('img_' . strototime() . '.png', $unencodedData);
应该是:
file_put_contents('img_' . strtotime() . '.png', $unencodedData);
编辑:
看起来您正试图根据时间戳创建一个随机文件名,所以只需使用date(“U”)
:
file_put_contents('img_' . date("U") . '.png', $unencodedData);
您必须在strotime()中传递一个日期,才能将其附加到image@user7176800的名称中。您能帮我吗?我对这个完全陌生,我真的不知道我在做什么…strotime(date()),试试这个。添加此插入的strotime()@user7176800您必须在strotime()中传递一个日期,才能将其附加到image@user7176800的名称中。您能帮我吗?我对这个完全陌生,我真的不知道我在做什么…strotime(date()),试试这个。添加这个插入的strotime()@user7176800I修复了它,现在它说:警告:strotime()至少需要1个参数,0在第9行的/data/web/virtuals/148842/virtual/www/save.php中给出。您需要向它传递一个日期,这样它就可以转换和返回一些内容了。。。。如果您只需要一个时间戳,请使用返回unix时间戳的
date('U')
?我不知道。。。文件内容('img'.strotime(date('U')).png',$unencodedData);谢谢,现在这个错误已经消失了,但是在我的主机上的“海报”文件夹中仍然没有保存图片。我认为应该省下来