Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将图像保存到数据库?_Php_Jquery_Html_Css_Sql - Fatal编程技术网

Php 如何将图像保存到数据库?

Php 如何将图像保存到数据库?,php,jquery,html,css,sql,Php,Jquery,Html,Css,Sql,我希望用户从预定义的图标集中选择一个图像,然后在提交表单后,图像将保存在数据库中。(我还想知道在将其保存到数据库中时使用的最佳数据类型是什么) 我想这样做,因为我不想让用户上传图像 另外,我对php和jQuery还是新手,所以我在这方面也需要帮助 代码: /*添加新任务按钮*/ .添加btn深色 { 颜色:黑色; /*浮动:对*/ 显示:内联块; 垂直对齐:中间对齐; 边框:1px纯黑; 右边距:0; } .添加btn暗跨距i..添加btn暗跨距 { 显示:内联块; 垂直对齐:中间对齐;

我希望用户从预定义的图标集中选择一个图像,然后在提交表单后,图像将保存在数据库中。(我还想知道在将其保存到数据库中时使用的最佳数据类型是什么)

我想这样做,因为我不想让用户上传图像

另外,我对php和jQuery还是新手,所以我在这方面也需要帮助


代码:

/*添加新任务按钮*/
.添加btn深色
{
颜色:黑色;
/*浮动:对*/
显示:内联块;
垂直对齐:中间对齐;
边框:1px纯黑;
右边距:0;
}
.添加btn暗跨距i..添加btn暗跨距
{
显示:内联块;
垂直对齐:中间对齐;
}
.添加btn黑暗:悬停
{
光标:指针!重要;
颜色:白色;
背景色:黑色;
}
.添加btn黑暗:焦点
{
盒影:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);
}
/*图标集*/
.iconSet
{
左缘:2%;
显示:内联块;
垂直对齐:中间对齐;
边框:1px纯黑;
填充物:5px;
宽度:60%;
}
.iconSet img
{
填充物:5px;
左边距:5px;
右边距:5px;
显示:内联块;
垂直对齐:中间对齐;
}
.iconSet img:悬停
{
光标:指针!重要;
/*填充物:5px*/
边框:0.5px纯黑;
盒影:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);
}

示例任务页
/*添加新任务按钮*/
.添加btn深色
{
颜色:黑色;
/*浮动:对*/
显示:内联块;
垂直对齐:中间对齐;
边框:1px纯黑;
右边距:0;
}
.添加btn暗跨距i..添加btn暗跨距
{
显示:内联块;
垂直对齐:中间对齐;
}
.添加btn黑暗:悬停
{
光标:指针!重要;
颜色:白色;
背景色:黑色;
}
.添加btn黑暗:焦点
{
盒影:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);
}
/*图标集*/
.iconSet
{
左缘:2%;
显示:内联块;
垂直对齐:中间对齐;
边框:1px纯黑;
填充物:5px;
宽度:60%;
}
.iconSet img
{
填充物:5px;
左边距:5px;
右边距:5px;
显示:内联块;
垂直对齐:中间对齐;
}
.iconSet img:悬停
{
光标:指针!重要;
/*填充物:5px*/
边框:0.5px纯黑;
盒影:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);
}
分配添加新任务
添加新任务
&时代;
*必填字段

*任务名称:/50个字符以内/ 空旷的田野! 还剩下50个字符 *任务位置: 主要 屋顶 空旷的田野! *任务描述:/800个字符以内/ 空旷的田野! 剩余800个字符 *任务图标: 添加任务 取消 //字符计数和任务描述或文本区域限制 $(“.taskDescArea”).keyup(函数(){ var maxLength=800; var length=$(this).val().length; 长度=最大长度; $(“.char count”).text(长度); }); //字符计数和对任务名称的限制 $(“#taskNameField”).keyup(函数(){ var maxLength=50; var length=$(this).val().length; 长度=最大长度; $(“.name char count”).text(长度); });
如果它是预定义的图标列表,您可能只想存储所选图标的唯一标识符(可以是名称或数字),只要它允许您根据该标识符显示正确的图像

在您的情况下,文件名似乎可以达到这个目的(例如“垃圾图标”或“水槽标识”)。或者,如果您在某个位置定义了所有图标文件名的有序列表,您也可以在该列表中存储数字索引。

保存到数据库

INSERT INTO `table` (`emp_image`) VALUES ('$img'); //datatype => LONGTEXT
从数据库加载图像:

$saved_img = $results['emp_image'];
<img src="data:image/jpeg;base64,<?=$saved_img;?>"/>
$saved_img=$results['emp_image'];
"/>
但更好的方法是将图像转换为图标

  • 将png转换为svg
  • 将svg加载到icomoon
  • 生成字体和
$saved_img = $results['emp_image'];
<img src="data:image/jpeg;base64,<?=$saved_img;?>"/>