将上传的图片保存在指定的一个文件夹,将路径保存在数据库中

 <!--upload.asp--> 

<html> 

<head> 

<meta  http-equiv="Content-Type"  content="text/html;  charset=gb2312"> 

<link  href=images/main.css  rel=STYLESHEET  type=text/css> 

</head> 

<body> 

<%'set  rs=server.createobject("adodb.recordset")%> 

<form  name="form1"  method="post"  action="uploadsave.asp"  enctype="multipart/form-data"> 

上传<span  lang="zh-cn">文件</span>:<input  type=file  name="file1"  class=input  size="20"> 

<input  type=submit  name="submit"  value="上传"  class=input>文件格式为*.<font  color="#FF0000">zip</font>,*.<font  color="#FF0000">rar</font>   

*<font  color="#FF0000">.gif</font>*<font  color="#FF0000">.jpg</font>*<font  color="#FF0000">.txt</font>*<font  color="#FF0000">.doc</font>*<font  color="#FF0000">.htm</font><span  lang="zh-cn">,请记住文件路径。(需</span>FSO<span  lang="zh-cn">支持。)</span></form>   

</body></html>

 

从大笨狼那里找到的, 还未测试, 先留着

要实现这个功能,需要以下步骤: 1.在 HTML 表单添加一个文件上传的表单控件: ```html <form action="upload.php" method="post" enctype="multipart/form-data"> <input type="file" name="image"> <input type="submit" value="上传"> </form> ``` 2.在 PHP 脚本接收上传的文件,并保存指定文件夹: ```php // 获取上传的文件 $image = $_FILES['image']; // 获取文件名和扩展名 $name = $image['name']; $ext = pathinfo($name, PATHINFO_EXTENSION); // 生成新的文件名 $newName = uniqid() . '.' . $ext; // 保存文件到指定文件夹 $uploadDir = 'uploads/'; if (!file_exists($uploadDir)) { mkdir($uploadDir, 0777, true); } $uploadFile = $uploadDir . $newName; move_uploaded_file($image['tmp_name'], $uploadFile); ``` 3.将文件名保存数据库: ```php // 连接数据库 $conn = new mysqli('localhost', 'username', 'password', 'dbname'); // 定义 SQL 语句 $sql = "INSERT INTO images (filename) VALUES ('$newName')"; // 执行 SQL 语句 $conn->query($sql); // 关闭数据库连接 $conn->close(); ``` 注意事项: - 上传的文件必须通过 POST 方法提交,并且设置 enctype 属性为 multipart/form-data。 - 上传的文件在 $_FILES 变量以数组的形式保存,包含文件名、临时文件名、文件类型、文件大小等信息。 - 为了避免文件名重复,可以使用 uniqid() 函数生成一个唯一的文件名。 - 保存文件时需要指定文件夹路径,并确保该文件夹存在,否则需要使用 mkdir() 函数创建。 - 保存文件时需要使用 move_uploaded_file() 函数将临时文件移动到指定文件夹。 - 将文件名保存数据库时需要注意 SQL 注入攻击,可以使用 mysqli_real_escape_string() 函数对文件名进行转义。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值