首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用PHP选择存储在数据库中的数据

如何使用PHP选择存储在数据库中的数据
EN

Stack Overflow用户
提问于 2018-09-29 06:23:29
回答 2查看 0关注 0票数 0

我面临的问题是我想读取一个自动激活和使用的值,我的数据库采用以下设计:

代码语言:javascript
复制
| id | 类别| 图片|
| 13 | 纸| 0 |

id是auto_incremented,我想要做的是生成id并将其用作图像中的值,然后上传一个文件,其名称为存储在图像中的数字,在此示例中图像将更改为13,文件将的名字是13.jpg。我开始我的代码,这个mysql_query("INSERT INTO category (category,image) VALUES ('$name','$default_item')");$ name是由用户编写的,$ default_item总是为零,我想做的是使用更新将图像更改为相等的id并上传这样的图像 $image_name = '$id' . '.jpg' move_uploaded_file($_FILES["image"]["tmp_name"], "../images/category/" . $image_name); 其中$ id是数据库中的id

EN

回答 2

Stack Overflow用户

发布于 2018-09-29 15:06:55

有几点需要提及:

你不应该再使用mysql_query了。请mysqli_query改用。mysql_ *已弃用,已在最新的PHP版本中删除。

其次:永远不要直接在SQL查询中使用用户生成的内容。使用准备好的声明。否则,您的网站很容易受到SQL注入攻击。

关于获取自动增量值 - 请参阅此主题

票数 0
EN

Stack Overflow用户

发布于 2018-09-29 15:47:56

而不是使用自动增量id作为图像名称。我建议生成一个唯一的图像名称,并在数据库中插入该名称,并使用该名称上传图像。使用以下代码创建图像名称

代码语言:javascript
复制
$uniquesavename = time().uniqid(rand());

mysql_query("INSERT INTO category (category,image) VALUES ('$name','$uniquesavename')");

$image_name = $uniquesavename . '.jpg'
move_uploaded_file($_FILES["image"]["tmp_name"], "../images/category/" . $image_name);

通过这种方式,用户上传的图像将始终具有唯一的名称。

试试这个,如果你遇到任何问题请告诉我

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100008891

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档