php mysql 图片路径_php – 将上传的图像的文件路径保存到MySQL数据库

我已经经历了无数不同的帮助菜单和主题,但仍然存在问题.我只想将上传图像的文件路径插入MySQL数据库.我已经尝试将图像传递给变量,然后使用查询将其推送到数据库,但它无法正常工作.我的代码在下面,表单在顶部,php在下面:

test

Name

Description

Price Low

Price High

3.Send this file:

4.

a

//upload image

$uploaddir = '';

$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

//end of upload image

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {

echo "File is valid, and was successfully uploaded.\n";

} else {

echo "Upload failed";

}

$con = mysql_connect("localhost","admintest","gen");

if (!$con)

{

die('Could not connect: ' . mysql_error());

}

mysql_select_db("test2", $con);

$sql="INSERT INTO products (name, description, price_low, price_high)

VALUES

('$_POST[name]','$_POST[desc]','$_POST[price_low]','$_POST[price_high]')";

if (!mysql_query($sql,$con))

{

die('Error: ' . mysql_error());

}

echo "1 record added";

mysql_close($con)

?>

解决方法:

除了Security issues和deprecated extension之外,您需要做的就是将文件名插入数据库.为此,请在数据库中添加“文件名”字段,然后相应地调整插入查询:

INSERT INTO products (name, description, price_low, price_high, filename)

VALUES (:name, :desc, :price_low, :price_high, :filename)

此外,您的$uploaddir变量为空,此时文件可能甚至没有保存在任何地方.要正确移动文件,请尝试以下操作:

$uploaddir = '/path/where/you/can/save/';

$rawFilename = $_FILES['userfile']['name'];

$extension = pathinfo($rawFilename, PATHINFO_EXTENSION);

$uploadfile = $uploaddir . md5($rawFilename) . '.' . $extension;

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {

echo "File is valid, and was successfully uploaded.\n";

} else {

echo "Upload failed";

}

此脚本假定您信任上传的内容,而md5功能只是一种快速简便的方法来“清理”(如果我可以称之为)文件的名称.

标签:php,mysql

来源: https://codeday.me/bug/20191008/1872457.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值