学习记录 | 文件收集-Php
宝贝推荐
推荐新手使用phpStudy这个建站,太方便了
实验初衷
大学什么事情都多,所以什么事情都要偷一下懒,大学总有收不完的青年大学习,我就想能不能来个自助收集然后捣鼓,捣鼓就有了简单的收集程序。
实验步骤
1.建立新的文件夹取名”upload“(收集文件用的)
2.建立提交页面,就亲切的取名“index.html”这个是重点程序
3.建立php程序,也给孩子一个名字"upload_file.php"这个是重点程序
4.建立登录成功页面“logn.html”和失败页面"nonono.html"这只是装饰,如果懒可不需要
代码栏!!!
index.html
一个简单的页面
说实话这个就是核心代码,大家可以自我装饰一下
<form action="upload_file.php" method="post" enctype="multipart/form-data">
<h2>学号(输入学号就行)</h2>
<input type="txt" name="id" id="id" placeholder="例如:2019533400" required minlength="10" maxlength="10" >//限制学号只能输入10位数
<h2>截图</h2>
<input type="file" name="file" id="file" required "><br>
<input type="submit" value="点我提交" >
</form>
如果想的画可以装修一下
去网络上找找模板就行
核心代码不能少-upload_file.php
<?php
// 允许上传的图片后缀
header("Content-type: text/html; charset=utf-8");
$file = $_FILES["file"];
$id=$_POST["id"];
$servername = "自己数据库的地址,一般都是127.0.0.1";
$username = "数据库的用户名";
$password = "数据库的密码";
$dbname = "数据库中的表";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
$sql = "SELECT * FROM class where id='$id'";
$tj = "UPDATE class SET tj='已提交' WHERE id='$id'" ;
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 输出数据
while($row = $result->fetch_assoc()) {
$usename=$row["id"].$row["name"];
$name = iconv('utf-8','gb2312',$usename.".jpg");
if($_FILES["file"]["size"] > 204800000){
echo "错误:".$file["error"];
echo "如果错误和班长说";
}else{
$conn->query($tj);//在数据库里面,跟新同学已经提交就变成已提交
//保存上传的文件
if(file_exists("upload".$file["name"])){
echo $file["name"]."文件已经存在";
}else{
//如果目录不存在则将该文件上传
if(move_uploaded_file($file['tmp_name'],"upload/".$name)){//文件按我要求的方式起名字
header("location:logn.html");//成功跳转页面
}
}
}
}
} else {
header("location:nonono.html");//不成功跳转页面
}
$conn->close();
?>
最后效果显示
一个字,爽!哈哈哈方便,研究10分钟,舒服到永远!
最后总结
还是新手,所以代码可能还有bug,没有发现出来,如果有bug,也可以师傅们提一下!
学习记录 | 文件收集-Php的更多相关文章
- Smart210学习记录-------文件操作
一.linux文件操作(只能在linux系统上用) 创建:int creat(const char* filename, mode_t mode) filename 表示要创建的文件名,mode表示对 ...
- Linux学习记录--文件IO操作相关系统编程
文件IO操作相关系统编程 这里主要说两套IO操作接口,各自是: POSIX标准 read|write接口.函数定义在#include<unistd.h> ISO C标准 fread|fwr ...
- leveldb 学习记录(四)Log文件
前文记录 leveldb 学习记录(一) skiplistleveldb 学习记录(二) Sliceleveldb 学习记录(三) MemTable 与 Immutable Memtablelevel ...
- V4L2学习记录【转】
转自:http://blog.chinaunix.net/uid-30254565-id-5637600.html V4L2学习记录 这个还没有分析完,先在这放着,防止电脑坏掉丢了,以后再完善 V4L ...
- MyBatis 学习记录3 MapperMethod类
主题 之前学习了一下MapperProxy的生产过程,自定义Mapper类的对象是通过动态代理生产的,调用自定义方法的时候实际上是调用了MapperMethod的execute方法:mapperMet ...
- 学习记录-java基础部分(一)
学习记录-java基础部分(一) 参考:GitHub上的知名项目:javaGuide : https://github.com/Snailclimb/JavaGuide/blob/master/doc ...
- Selnium + POM + Pytest:学习记录
简介 selenium POM Pytest 结合,通过Pytest fixture 来传递Driver 保证一个测试用例[1] :driver[1] 学习记录 插件包 selenium: 操作浏览器 ...
- Quartz 学习记录1
原因 公司有一些批量定时任务可能需要在夜间执行,用的是quartz和spring batch两个框架.quartz是个定时任务框架,spring batch是个批处理框架. 虽然我自己的小玩意儿平时不 ...
- UWP学习记录12-应用到应用的通信
UWP学习记录12-应用到应用的通信 1.应用间通信 “共享”合约是用户可以在应用之间快速交换数据的一种方式. 例如,用户可能希望使用社交网络应用与其好友共享网页,或者将链接保存在笔记应用中以供日后参 ...
随机推荐
- OV2640读ID全是FF问题
最近刚好在Cyclone IV上通过LVDS把一个7寸的屏点亮,赶着热度,淘宝买了OV2640这个摄像头模块,初始化因为用Vrilog比C复杂得多,易调试性不如C,所以使用STM32初始化,模块有F3 ...
- leetcode 反转链表部分节点
反转从位置 m 到 n 的链表.请使用一趟扫描完成反转. 说明:1 ≤ m ≤ n ≤ 链表长度. 示例: 输入: 1->2->3->4->5->NULL, m = 2, ...
- CentOS7.5搭建Hive2.3.3
一 Hive的下载 软件下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/hive/ 这里下载的版本是:apache-hive-2.3.3-bin.t ...
- Linux系统使用Nmon监控及分析系统性能
一.下载nmon(1)查看sever的内核版本: 命令:lsb_release -a执行结果:LSB Version: :base-4.0-amd64:base-4.0-noarch:c ...
- Laravel:No application encryption key has been specified.
其实吧,这个就是你没有生成密钥 你首先去看看,如果是刚刚下载的lavavel应该会有一个.env.example文件在根目录下,然后修改这个文件名,改成.env 然后用命令行去执行php artisa ...
- Redis 数据结构 之 SDS
SDS(simple dynamic string),简单动态字符串.s同时它被称为 Hacking String.hack 的地方就在 sds 保存了字符串的长度以及剩余空间.sds 的实现在 sd ...
- python 函数式编程 高阶函数 装饰器
# -*- coding:gb2312 -*- #coding=utf-8 # 高阶函数 import math def is_sqr(x): y = int(math.sqrt(x)) return ...
- 旷世提出类别正则化的域自适应目标检测模型,缓解场景多样的痛点 | CVPR 2020
论文基于DA Faster R-CNN系列提出类别正则化框架,充分利用多标签分类的弱定位能力以及图片级预测和实例级预测的类一致性,从实验结果来看,类该方法能够很好地提升DA Faster R-CNN系 ...
- phpstorm设置xdebug调试
phpstorm设置xdebug调试# wamp开发环境安装完成以后,打开网页,输入 :localhost 检测xdebug是否开启 3.若xdebug已开启,请找到你wamp或者phpstudy的安 ...
- xeus-clickhouse: Jupyter 的 ClickHouse 内核
在科学计算领域,Jupyter 是一个使用非常广泛的集成开发环境,它支持多种主流的编程语言比如 Python, C++, R 或者 Julia.同时,数据科学最重要的还是数据,而 SQL 是操作数据最 ...