一篇文章弄懂PHP和HTML的嵌套写法

目录
  • 1.1全部php生成结构
  • 1.2html中嵌套php
  • 1.3博客项目
    • 1.3.1前后台
    • 1.3.2项目开发流程
    • 1.3.3创建数据库和表
    • 1.3.4添加博客类别
    • 1.3.5显示所有的博客类别
    • 1.3.6实现博客类别编辑功能
      • 1.3.6.1a标签传值
      • 1.3.6.2点击更新按钮实现更新功能
  • 总结

1.1全部php生成结构


1.2html中嵌套php


总结如下:

html和php混写规则:

  • php代码必须包在<?php ?>
  • html中写php也是同理,但是有值输出必须加上echo

1.3博客项目

1.3.1前后台

前台主要是做数据展示的,所有的用户通过访问域名(网站的网址)来看到的所有的数据信息,如果其中的数据过时了需要删除或者更新,需要后台管理员登录后台管理界面,进行增删改,前台的数据也会跟着发生变化。后台登录一般是需要账号和密码的。

1.3.2项目开发流程

  1. 产品经理和用户沟通,确认项目的功能模块
  2. 召开会议,确定创建数据库,数据表,确定表与表之间的关系(一对、一对多、多对多)还有表的字段
  3. 正式进行开发,分组协作完成
  4. 测试人员专门进行测试,发现问题以后会报给开发人员,开发人员改正代码
  5. 项目交付,上线就可以

1.3.3创建数据库和表

创建数据库

create database blog2;

use blog2;

创建博客类别表

create table blog_type(
	type_id int primary key auto_increment comment '博客类别',
	type_name varchar(32) comment '博客类别名称'

);

创建博客信息表

create table blog(
	id int primary key auto_increment comment '博客编号',
	title varchar(64) comment '博客标题',
	content text comment '博客内容',
	type_id int comment '博客类别编号',
	click int comment '点击量',
	create_time datetime comment '发表时间'

);

1.3.4添加博客类别

我们先常见blogtype_add.html

我们再创建blogtype_add.php

说明:

如果用户没有输入博客类别直接点击添加按钮,意思就是变量为空值,为了避免,用!empty()判断一下

如果用户直接访问blogtype_add.php,$blog_name这个变量是不存在的,会报错,所以加上isset(变量)来避免这个问题。

1.3.5显示所有的博客类别

新创建blogtype_list.php,然后从博客类别表查询所有的数据并遍历显示,我们希望新添加的类别在前面显示,所以查询的时候降序排序

我们希望用户可以点击标签跳转到不同的页面,所以添加了上面的a标签。

1.3.6实现博客类别编辑功能

我们在博客类别页添加一列用a标签传递参数,格式如下:

注意a标签传递参数?名=值;

然后php接收a标签传递的参数格式$_GET[‘名']

1.3.6.1a标签传值

我们在列表页点击a标签的时候,跳转到编辑页面,编辑页面应该显示你点击的那条博客类别的名字(放在value属性)
我们根据传递过来的编号先去数据库查询相关信息,把type_name放在input标签的value属性了。

这样比如我们在列表页点击的是UI设计

然后跳转到编辑页应该显示如下:

1.3.6.2点击更新按钮实现更新功能

这个是post请求


总结

到此这篇关于PHP和HTML嵌套写法的文章就介绍到这了,更多相关PHP和HTML嵌套写法内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • PHP 修复未正常关闭的HTML标签实现代码(支持嵌套和就近闭合)

    fixHtmlTag version 0.2 这个版本解决了上次遗留的问题,即就近闭合和嵌套闭合问题.具体可以看代码的注释. 复制代码 代码如下: <?php /** * fixHtmlTag * * HTML标签修复函数,此函数可以修复未正确闭合的 HTML 标签 * * 由于不确定性因素太多,暂时提供两种模式"嵌套闭合模式"和 * "就近闭合模式",应该够用了. * * 这两种模式是我为了解释清楚此函数的实现而创造的两个名词, * 只需明白什么意思就行.

  • 一篇文章弄懂PHP和HTML的嵌套写法

    目录 1.1全部php生成结构 1.2html中嵌套php 1.3博客项目 1.3.1前后台 1.3.2项目开发流程 1.3.3创建数据库和表 1.3.4添加博客类别 1.3.5显示所有的博客类别 1.3.6实现博客类别编辑功能 1.3.6.1a标签传值 1.3.6.2点击更新按钮实现更新功能 总结 1.1全部php生成结构 1.2html中嵌套php 总结如下: html和php混写规则: php代码必须包在<?php ?> html中写php也是同理,但是有值输出必须加上echo 1.3博

  • 一篇文章弄懂MySQL查询语句的执行过程

    前言 需要从数据库检索某些符合要求的数据,我们很容易写出 Select A B C FROM T WHERE ID = XX  这样的SQL,那么当我们向数据库发送这样一个请求时,数据库到底做了什么? 我们今天以MYSQL为例,揭示一下MySQL数据库的查询过程,并让大家对数据库里的一些零件有所了解. MYSQL架构 mysql架构 MySQL 主要可以分为 Server 层和存储引擎层. Server层 包括连接器.查询缓存.分析器.优化器.执行器等,所有跨存储引擎的功能都在这一层实现,比如存

  • 一篇文章弄懂JVM类加载机制过程以及原理

    目录 一.做一个小测试 二.类的初始化步骤: 三.看看你写对了没? 四.类的加载过程 五.类加载器的分类 1.启动类加载器(引导类加载器) 2.扩展类加载器 3.应用程序类加载器(系统类加载器) 六.类加载器子系统的作用 七.总结 一.做一个小测试 通过注释,标注出下面两个类中每个方法的执行顺序,并写出studentId的最终值. package com.nezha.javase; public class Person1 { private int personId; public Perso

  • 一篇文章弄懂C++左值引用和右值引用

    目录 1. 左值和右值 2. 左值引用 3. 右值引用 3.1 出现 3.2 概念 3.3 应用 3.3.1 右值引用绑定到左值上 3.3.2 std::move()本质 3.3.3 移动构造函数和移动赋值运算符 3.3.4 std::move()的一个例子 4. 补充-协助完成返回值优化(RVO) 5. 总结 篇幅较长,算是从0开始介绍的,请耐心看~ 该篇介绍了左值和右值的区别.左值引用的概念.右值引用的概念.std::move()的本质.移动构造函数.移动复制运算符和RVO. 1. 左值和右

  • 一篇文章弄懂Android自定义viewgroup的相关难点

    本文的目的 目的在于教会大家到底如何自定义viewgroup,自定义布局和自定义测量到底如何写.很多网上随便搜搜的概念和流程图 这里不再过多描述了,建议大家看本文之前,先看看基本的自定义viewgroup流程,心中有个大概即可.本文注重于实践 viewgroup 的测量布局流程基本梳理 稍微回顾下,基本的viewgroup绘制和布局流程中的重点: 1.view 在onMeasure()方法中进行自我测量和保存,也就是说对于view(不是viewgroup噢)来说一定在onMeasure方法中计算

  • 一篇文章弄懂javascript中的执行栈与执行上下文

    前言 作为一个前端开发人员,弄清楚JavaScript的执行上下文有助于我们理解js中一些晦涩的概念,比如闭包,作用域,变量提升等等. 执行栈 执行栈用于存储代码执行期间创建的所有执行上下文.具有FILO接口,也被称为调用栈. 当JavaScript代码被运行的时候,会创建一个全局上下文,并push到当前执行栈.之后当发生函数调用的时候,引擎会为函数创建一个函数执行上下文并push到栈顶.引擎会先执行调用栈顶部的函数,当函数执行完成后,当前函数的执行上下文会被移除当前执行栈.并移动到下一个上下文

  • 一篇文章弄懂kotlin的扩展方法

    Usage 扩展函数是 kotlin 的又一杀手锏功能,能够在不修改源码的基础上,扩展某些类的能力,方便开发. 例如这里演示了给 String 添加一个获取第一个元素的方法. fun String.first(): Char { if (isEmpty()) { throw NoSuchElementException("String is empty") } return this[0] } fun main(args: Array<String>) { println(

  • 一篇文章弄懂C#中的async和await

    目录 前言 async await 从以往知识推导 创建异步任务 创建异步任务并返回Task 异步改同步 说说 await Task 说说 async Task<TResult> 同步异步? Task封装异步任务 关于跳到 await 变异步 为什么出现一层层的 await 总结 前言 本文介绍async/Task.在学习该知识点过程中,一定要按照每一个示例,去写代码.执行.输出结果,自己尝试分析思路. async 微软文档:使用 async 修饰符可将方法.lambda 表达式或匿名方法指定

  • 一篇文章弄懂Spring MVC的参数绑定

    前言 参数绑定,简单来说就是客户端发送请求,而请求中包含一些数据,那么这些数据怎么到达 Controller ?这在实际项目开发中也是用到的最多的,那么 SpringMVC 的参数绑定是怎么实现的呢? 下面我们来详细的讲解. SpringMVC参数绑定,简单来说就是将客户端请求的key/value数据绑定到controller方法的形参上,然后就可以在controller中使用该参数了 下面通过5个常用的注解演示下如何进行参数绑定: 1. @PathVariable注解 @PathVariabl

  • 一篇文章弄懂Python中所有数组数据类型

    前言 数组类型是各种编程语言中基本的数组结构了,本文来盘点下Python中各种"数组"类型的实现. list tuple array.array str bytes bytearray 其实把以上类型都说成是数组是不准确的.这里把数组当作一个广义的概念,即把列表.序列.数组都当作array-like数据类型来理解. 注意本文所有代码都是在Python3.7中跑的^_^ 0x00 可变的动态列表list list应该是Python最常用到的数组类型了.它的特点是可变的.能动态扩容,可存储

随机推荐