宝贝推荐

推荐新手使用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的更多相关文章

  1. Smart210学习记录-------文件操作

    一.linux文件操作(只能在linux系统上用) 创建:int creat(const char* filename, mode_t mode) filename 表示要创建的文件名,mode表示对 ...

  2. Linux学习记录--文件IO操作相关系统编程

    文件IO操作相关系统编程 这里主要说两套IO操作接口,各自是: POSIX标准 read|write接口.函数定义在#include<unistd.h> ISO C标准 fread|fwr ...

  3. leveldb 学习记录(四)Log文件

    前文记录 leveldb 学习记录(一) skiplistleveldb 学习记录(二) Sliceleveldb 学习记录(三) MemTable 与 Immutable Memtablelevel ...

  4. V4L2学习记录【转】

    转自:http://blog.chinaunix.net/uid-30254565-id-5637600.html V4L2学习记录 这个还没有分析完,先在这放着,防止电脑坏掉丢了,以后再完善 V4L ...

  5. MyBatis 学习记录3 MapperMethod类

    主题 之前学习了一下MapperProxy的生产过程,自定义Mapper类的对象是通过动态代理生产的,调用自定义方法的时候实际上是调用了MapperMethod的execute方法:mapperMet ...

  6. 学习记录-java基础部分(一)

    学习记录-java基础部分(一) 参考:GitHub上的知名项目:javaGuide : https://github.com/Snailclimb/JavaGuide/blob/master/doc ...

  7. Selnium + POM + Pytest:学习记录

    简介 selenium POM Pytest 结合,通过Pytest fixture 来传递Driver 保证一个测试用例[1] :driver[1] 学习记录 插件包 selenium: 操作浏览器 ...

  8. Quartz 学习记录1

    原因 公司有一些批量定时任务可能需要在夜间执行,用的是quartz和spring batch两个框架.quartz是个定时任务框架,spring batch是个批处理框架. 虽然我自己的小玩意儿平时不 ...

  9. UWP学习记录12-应用到应用的通信

    UWP学习记录12-应用到应用的通信 1.应用间通信 “共享”合约是用户可以在应用之间快速交换数据的一种方式. 例如,用户可能希望使用社交网络应用与其好友共享网页,或者将链接保存在笔记应用中以供日后参 ...

随机推荐

  1. 如何在交互式环境中执行Python程序

    相信接触过Python的小伙伴们都知道运行Python脚本程序的方式有多种,目前主要的方式有:交互式环境运行.命令行窗口运行.开发工具上运行等,其中在不同的操作平台上还互不相同.今天,小编讲些Pyth ...

  2. 最新 iOS 框架整体梳理(二)

    在前面一篇中整理出来了一些了,下面的内容是接着上面一篇的接着整理.上篇具体的内容可以点击这里查看:   最新 iOS 框架整体梳理(一) Part - 2          34.CoreTeleph ...

  3. Python中map和reduce函数

    ①从参数方面来讲: map()函数: map()包含两个参数,第一个是参数是一个函数,第二个是序列(列表或元组).其中,函数(即map的第一个参数位置的函数)可以接收一个或多个参数. reduce() ...

  4. 轻量级进度条 – Nprogress.js

    进度条库是前端中常见的库之一,bootstrap中提供了多种进度条样式.NProgress.js和nanobar.js是两款轻量级的进度条组件,使用简便. 官网: NProgress.js:http: ...

  5. Codeblocks 解决界面模糊的方法

    之前用16.01不愿意升17.12的原因就是升级后界面变得非常模糊感觉很难看,找了个方法把这个问题解决了,这个方法能解决绝大多数软件打开后界面模糊的问题 (DEV模糊也能解决). 1.安装软件后桌面会 ...

  6. 有没有人想和我一起编写 Clear Writer 的?

    合作内容 程序编写 了解 JS.HTML.CSS 等基础前端技能,了解 Electron 开发. 翻译 熟练运用一门外语(中文英文除外),书面表达过关. 报酬 在 Github 上本项目里面的 REA ...

  7. 2019-01-31 Python学习之BFS与DFS实现爬取邮箱

    今天学习了python网络爬虫的简单知识 首先是一个爬取百度的按行读取和一次性爬取 逐行爬取 for line in urllib.request.urlopen("http://www.b ...

  8. MySQL ORDER BY:对查询结果进行排序

    在 MySQL SELECT 语句中,ORDER BY 子句主要用来将结果集中的数据按照一定的顺序进行排序. 其语法格式为: ORDER BY {<列名> | <表达式> | ...

  9. 数据库(mysql)基础操作

    DDL(数据定义语言)------>建库,建表 DML(数据操作语言)------>对表中的记录操作增删改查 DQL(数据查询语言)------>对表中的查询操作 DCL(数据控制语 ...

  10. mysql面试题总结

    Mysql中的myisam与innodb的区别? InnoDB存储引擎的四大特性? 什么是事务? 数据库事务的四大特性? 不考虑事务的隔离性,会发生几种问题? MySQL数据库提供的四种隔离级别? 有 ...