HTML常用标签

一.改造登录案例

1.概述

现在的写法中,出现了SQL注入攻击的现象

原因是:用户输入了非法字符#,#在SQL语句里是注释的意识,改变了SQL语义

是Statement的传输器功能不够强大.要用PreparedStatement替换

Statement:不安全,低效,SQL拼接复杂

PreparedStatement:安全,高效,不需要SQL拼接直接用?作为占位符,再给?设置值--框架也在用

2.改造

package cn.tedu.test;

import java.sql.*;
import java.util.Scanner;

//测试用户表
public class Test2 {
    public static void main(String[] args) throws Exception {
//        method();//查询所有用户信息
        method2();//根据用户名和密码查询,用户信息,查到了才能登录
    }
    //模拟用户登录:利用JDBC,根据用户名和密码查询用户信息
    private static void method2() throws Exception{
        //注册驱动
        Class.forName("com.mysql.jdbc.Driver");
        //获取数据库的连接
        String url="jdbc:mysql://localhost:3306/cgb2106?characterEncoding=utf8" ;
        Connection c = DriverManager.getConnection(url,"root","root");

        String a = new Scanner(System.in).nextLine();
        String b = new Scanner(System.in).nextLine();
        //获取传输器
//        Statement s = c.createStatement();//缺点:不安全,低
String sql = "select * from user where name=? and password=?";
        //SQL骨架,?叫占位符
        PreparedStatement ps = c.prepareStatement(sql);
        //设置参数
        ps.setString(1,a);//给第一个?设置a的值
        ps.setString(2,b);//给第二个?设置b的值
        //执行SQL
        ResultSet r = ps.executeQuery();
        //处理结果集
        if( r.next() ){//next()用来判断有没有数据,查到了返回true
            System.out.println("恭喜您,登录成功!");
        }else{
            System.out.println("用户名或者密码输入错误!");
        }
        //释放资源
        r.close();
        ps.close();
        c.close();
    }
    //利用JDBC,查询所有用户信息
    private static void method() throws Exception {
        //注册驱动
        Class.forName("com.mysql.jdbc.Driver");
        //获取数据库的连接
String url="jdbc:mysql://localhost:3306/cgb2106?characterEncoding=utf8" ;
        Connection c = DriverManager.getConnection(url,"root","root");
        //获取传输器
        Statement s = c.createStatement();
        //执行SQL
        ResultSet r = s.executeQuery("select * from user");
        //处理结果集
        while( r.next() ){//如果有数据就返回true
            String id = r.getString(1);//获取数据
            String name = r.getString(2);//获取数据
            String pwd = r.getString(3);//获取数据
            System.out.println(id+name+pwd);
        }
        //释放资源
        r.close();
        s.close();
        c.close();
    }

}

二.HTML

1.概述

专门用来制作网页的技术,是超文本标记语言

超文本:比文本功能要强大,网页中可以插入 图片 音频 视频等...

标记:也叫标签,用<???>,不同的标签有不同的功能

2.入门案例

<!doctype html>
<html>
	<head></head>
	<body>
		he&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;llo html~ 
		hello html~
		hello html~ <br>
		hello html~
		hello html~
		hello html~
	</body>
</html>

3.使用Hbuilder

新建项目-选中项目-新建-XX.html文件

三.常用标签

1.概述

使用不同的标签,实现在网页中插入不同类型的元素

2.常用标签

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<!-- 6.输入框 -->
		<input type="text"/>  
		<input type="password" placeholder="手机号"/>  
		<input type="week"/>  
		<input type="date"/>  
		<input type="datetime"/>  
		<input type="number"/>  
		<input type="email"/>  
		<input type="radio"/> 男 
		<input type="checkbox"/>  杨幂
		<input type="button" value="点我"/>
		
		
		<!-- 5.超链接标签a 
			 href指定跳转到哪个网址 
			 target是以什么方式打开(默认是_self当前窗口打开),_blank是新窗口打开
		-->	
		<a href="https://www.baidu.com/" target="_blank">百度一下</a>
		<a href="https://www.baidu.com/s?cl=3&tn=baidutop10&fr=top1000&wd=31%E7%9C%81%E5%8C%BA%E5%B8%82%E6%96%B0%E5%A2%9E%E6%9C%AC%E5%9C%9F%E7%A1%AE%E8%AF%8A55%E4%BE%8B&rsv_idx=2&rsv_dl=fyb_n_homepage&hisfilter=1" target="_blank">31省区市新增本土确诊55例</a>
		
		<a name="top">我是顶部</a>
		<h2>广东富婆通讯录</h2>
		<h2>广东富婆通讯录</h2>
		<h2>广东富婆通讯录</h2>
		<h2>广东富婆通讯录</h2>
		<h2>广东富婆通讯录</h2>
		<!-- 锚定: 回到一个固定位置 -->
		<a href="#top">点我回到顶部</a>
		
		
		<!-- 1.标题标签: 在网页中 插入标题 h1大~h6小-->
			<h1>风雨有我在 人民请放心</h1>
			<h2>风雨有我在 人民请放心</h2>
			<h3>风雨有我在 人民请放心</h3>
			<h4>风雨有我在 人民请放心</h4>
			<h5>风雨有我在 人民请放心</h5>
			<h6>风雨有我在 人民请放心</h6>
		<!-- 2.列表标签: ul(unorderlist)+li 无序列表-->
			<ul>
				<li>北京严控中高风险地区人员进京</li>
				<li>北京严控中高风险地区人员进京</li>
			</ul>
		<!-- 3.列表标签: ol(orderlist)+li 有序列表-->
			<ol>
				<li>北京严控中高风险地区人员进京</li>
				<li>北京严控中高风险地区人员进京</li>
			</ol>
		<!-- 4.图片标签img :  通过src属性指定图片的位置
			width:修饰了图片的宽度 height:修饰了图片的高度(单位是像素)
		-->	
			<img src="a.png" width="150px" height="50px"/>
			<img src="a.png" width="150px" height="50px"/>
			
			
	</body>
</html>

3.表格标签

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>测试 表格标签</title>
	</head>
	<body>
		<!-- 练习表格: th标签比td多了元素加粗的效果  
			colspan用来合并列  rowspan用来合并行
		-->
		<table border="1px">
			<tr>
				<th>总页面流量</th>
				<th>共计来访</th>
				<th>会员</th>
				<th>游客</th>
			</tr>
			<tr>
				<td>1</td>
				<td>2</td>
				<td>3</td>
				<td>4</td>
			</tr>
			<tr>
				<td>1</td>
				<td colspan="3">2</td>
			</tr>
		</table>
		
		
		<!-- 1. table向网页中插入表格 
			tr表示表格里的行元素,td表示行里的列元素
			width / height 宽度/高度   border边框  bgcolor是背景颜色 cellspacing单元格间距
			合并列 colspan  合并行 rowspan
		-->
		<table width="300px" height="50px" 
					border="3px" bgcolor="pink" cellspacing="0px">
			<tr>
				<td colspan="2">11</td>
				
				<td>13</td>
			</tr>
			<tr>
				<td>21</td>
				<td>22</td>
				<td rowspan="2">23</td>
			</tr>
			<tr>
				<td>31</td>
				<td>32</td>
				
			</tr>
		</table>
	</body>
</html>

4.表单标签form

本质就是一个表格,表单比表格多了数据提交功能

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>测试 表单标签</title>
	</head>
	<body>
		<!-- 创建表单,
			下拉框:select(下拉) + option(选项)
			文件上传: <input type="file"/>
			文本域:<textarea></textarea>
		 -->
		<h1>注册表单</h1>  
		<form>
			<table border="1px" cellspacing="0px" bgcolor="lightgray">
				<tr>
					<td>用户名:</td>
					<td>
						<input type="text" />
					</td>
				</tr>
				<tr>
					<td>密码:</td>
					<td>
						<input type="password" />
					</td>
				</tr>
				<tr>
					<td>确认密码:</td>
					<td>
						<input type="password" />
					</td>
				</tr>
				<tr>
					<td>昵称:</td>
					<td>
						<input type="text" />
					</td>
				</tr>
				<tr>
					<td>邮箱:</td>
					<td>
						<input type="email" />
					</td>
				</tr>
				<tr>
					<td>性别:</td>
					<td>
						<input type="radio" />男
						<input type="radio" />女
					</td>
				</tr>
				<tr>
					<td>爱好:</td>
					<td>
						<input type="checkbox" />篮球
						<input type="checkbox" />足球
						<input type="checkbox" />乒乓球
					</td>
				</tr>
				<tr>
					<td>城市:</td>
					<td>
						<select> 
							<option>北京</option>
							<option>上海</option>
							<option>广州</option>
							<option>深圳</option>
						</select>
					</td>
				</tr>
				<tr>
					<td>头像:</td>
					<td>
						<input type="file" />
					</td>
				</tr>
				<tr>
					<td>验证码:</td>
					<td>
						<input type="text" />
						<img src="a.png" />
						<input type="button" value="点我换一张" />
					</td>
				</tr>
				<tr>
					<td>自我描述:</td>
					<td>
						<textarea>描述信息...</textarea>
					</td>
				</tr>
				<tr>
					<td colspan="2">
						<input type="button" value="提交"/>
						<input type="button" value="重置"/>
					</td>
				</tr>
			</table>
		</form>
	</body>
</html>

5.无法提交的问题

步骤:

1.把提交的按钮必须改成submit类型

2.给标签加name属性

3.当提交数据时,会把用户输入的信息jack提交给服务器

3.当提交数据时,会把用户输入的信息jack提交给服务器

http://127.0.0.1:8848/cgb2106/test03.html?user=jack
http://127.0.0.1:8848/cgb2106/test03.html?user=12&abc=123&age=18

4.改造网页文件

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>测试 表单标签</title>
	</head>
	<body>
		<!-- 创建表单,
			下拉框:select(下拉) + option(选项)
			文件上传: <input type="file"/>
			文本域:<textarea></textarea>
		 -->
		<h1>注册表单</h1>  
		<form>
			<table border="1px" cellspacing="0px" bgcolor="lightgray">
				<tr>
					<td>用户名:</td>
					<td>
						<input type="text" name="user"/>
					</td>
				</tr>
				<tr>
					<td>密码:</td>
					<td>
						<input type="password" name="pwd" />
					</td>
				</tr>
				<tr>
					<td>确认密码:</td>
					<td>
						<input type="password" name="repwd" />
					</td>
				</tr>
				<tr>
					<td>昵称:</td>
					<td>
						<input type="text"  name="nick" />
					</td>
				</tr>
				<tr>
					<td>邮箱:</td>
					<td>
						<input type="email"  name="mail" />
					</td>
				</tr>
				<tr>
					<td>性别:</td>
					<td>
						<!-- 想单选就必须设置name属性,而且值必须相同
								设置好name属性数据就可以提交了,但是默认提交了on
						 -->
						<input type="radio" name="sex" value="1"/>男
						<input type="radio" name="sex" value="0"/>女
					</td>
				</tr>
				<tr>
					<td>爱好:</td>
					<td>
						<input type="checkbox" />篮球
						<input type="checkbox" />足球
						<input type="checkbox" />乒乓球
					</td>
				</tr>
				<tr>
					<td>城市:</td>
					<td>
						<select> 
							<option>北京</option>
							<option>上海</option>
							<option>广州</option>
							<option>深圳</option>
						</select>
					</td>
				</tr>
				<tr>
					<td>头像:</td>
					<td>
						<input type="file" />
					</td>
				</tr>
				<tr>
					<td>验证码:</td>
					<td>
						<input type="text" />
						<img src="a.png" />
						<input type="button" value="点我换一张" />
					</td>
				</tr>
				<tr>
					<td>自我描述:</td>
					<td>
						<textarea>描述信息...</textarea>
					</td>
				</tr>
				<tr>
					<td colspan="2">
						<input type="submit" value="提交"/>
						<input type="button" value="重置"/>
					</td>
				</tr>
			</table>
		</form>
	</body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值