您的位置:首页 > 编程语言 > PHP开发

php留言板编写总结

2018-02-02 15:24 246 查看

0x01

寒假闲来无事,就随便写一个留言板来复习一下php语言

0x02 先从html语言简单说起

2.1 基础的html结构:

<!DOCTYPE html>     //声明

<html>

<head></head>  //描述网页各种属性,一般不在网页内容内显示

<body></body>  //真正写内容的

</html>//大标签


2.2 用到的标签:

一对的:

<div></div>  //容器
<form></form>    //表格
<textarea></textarea>  //文本输入
<a herf=""> </a>  //超链接
<select>     //选择项
<option></option>    //选择内容
<option></option>
</select>


单身狗类型的:

<input type="" value="" />  //输入  type跟value属性分别是输入的类型跟名字
//type有submit,text,radio,checkbox,file等属性

<!-- -->           //注释

<image src=""  width="" height =""/>       //图片


2.3 全局属性

例如id class title name等

0x03 CSS

感觉这一部分没什么多大作用,因为单单是用来美化的(我感觉),考虑到自己刚写博客还是总结一下我自己认为的东西吧。

样式:设置字体颜色宽度背景颜色等就是样式 样式与样式之间用分号隔开,其属性用冒号隔开。。

3.1 对CSS的操作

1.利用div标签里面的style属性去完成操作,例如:

<div style="color:red;"></div>


2.在head里面写,通过style标签,例如:

<head>
<style>    //div里面的内容都变成红色
div{
color:green;
}
</style>
</head>


3.通过外链去实现,写link标签在head里面,注意此时不能使用style标签,因为style标签是属于html的东西

<head>
<link rel="stylesheet"  type = "text/css"  href= "style.css"/>  //最后一个属性是你对应的文件名
</head>


3.2 选择器:

<div></div>
css文件内都是如果是div就代表全部div都改变字体大小等属性。。。

关于选中某一部分的容器去改字体大小或颜色

例如:

<div id="a1"></div>
,对应的css文件也要改,改成
#a1{}
这里的#代表了是id选择器

<div class="a1"></div>
,对应的css文件也要改,改成
.a1{}
这里的#代表了是类选择器

还有就是有一个类似C++里面的继承关系的东西,在同名不同选择器内可以在css文件内这样写:

#a1 .aa1
{
}  //id选择器的
.a1 .aa1
{
}  //类选择器的


0x04 再来简单谈谈JavaScript

一般网页上的动态画面都是它来完成的

4.1 可以运行的地方

html的
<script></script>


html属性事件中,如onclick

浏览器的console控制台 //ctf题目有些就可以利用这个点去找flag

4.2 JavaScript DOM 主要是对html的操作

1.获取html元素 函数getElementById():通过ID获取元素,例如:

<p id="info">哈哈哈</p>
<script>
x= doucument.getElementById("info")
alert('id为info元素的文本是'+x.innerHTML);    //这里的innerHTML是获取元素内容,而alert()在JavaScript中可以弹出一个警告框展示信息
</script>


2.修改html内容 与获取内容的前两步是一样的,例如:

<p id="info">哈哈哈</p>
<script>
x= doucument.getElementById("info")
x.innerHTML = '改变的内容!';
</script>


3.创建动态的html元素内容

document.write()


4.增加互动元素,如:

<script>
function changetext(id)
{
id.innerHTML="谢谢!";
}
</script>
<h1 onclick="chagetext(this)">click here</h1>  //利用onclick


4.3 JavaScript BOM –对浏览器的操作:

警告用户 //常用于xss漏洞测试

警告弹窗alert()

确认弹窗confirm()

提示弹窗prompt()

获取cookie或者写入cookie

document.cookie
//读取

document.cookie="写入值"
//写入

还有其他操作就不一一举例了 ->->

0x05 PHP

5.1 环境的搭建

各种傻瓜式装环境谷歌一下都有


5.2 标记符

`<?php     ?>  //在标记符之外都是可用来显示html代码的(html混写),每句话后面都一定要记住不要忘记分号`


5.3 注释:

#
2.
//
3.
/**/


5.4 变量

$
开头

注意:定义字符串与数组各有两种形式

字符串
$a="aaa"   $a='aaa'
这里跟C++的字符与字符串定义有点区别,而且双引号考虑变量名,单引号该输出什么就输出什么

$b=[1,2,3]   $b=array(1,2,3)
前面是php5.4之后数组的新写法 ,后面是传统写法

注意数据类型的转换,无效的字符串就会变成0 例如:
(int)'saaa'=0  (int)true=1
等等

5.5 var_dump()函数

var_dump()
同时输出变量的数据类型及数据,可多个值写进,一般用来测试。。。

5.6 运算符

其中有一个
.=
的符号,里面的.是用来连接两个变量的符号

还有一些例如
=>
->
我认为还是比较特殊的

5.7 函数

定义格式

function name()
{

}


注意:函数里面的变量进不来也出不去

5.8 数组

键是唯一的 ,但是值可以是多种类型的,用逗号隔开,例如可以数组套数组
$arr=[1,2,[1,2,3]]


分索引数组与关联数组:

$arr1=[1,2,3];   //索引数组


$arr2=[ 'a'=> 1,'b'=> 2 ];    //关联数组这个有点类似python里边的字典,随意添加键值
unset($arr2['b']);    //删除


5.9 数据的发送与接收注意点:

1.html一定要在form表单内并且要有actionmethod属性

2.form里面的input一定要有对应的name

例如:

<form action='test.php' method='post'>
<input type='text' name='aa' />
<input type='text'  name='bb' />
<input type='submit' value='提交'>
</form>


3.GET,POST,REQUEST(REQUEST方式两种都行,不过听说开发有点危险,不推荐使用)在对应的php文件里面的键名一定要对应,这两个预变量与数组的操作差不多

5.10 类和对象

个人觉得代码很少的时候,觉得这是累赘。。。。。可能开发团队大了就有些用处。。。

类里面的变量跟方法最好都要设置可见性,就下些什么public之类的。->详情请看官方文档

对象调用类里面的属性好像只能用
->
,看了看文档好像没有用.去连接的,这里还是和C++有点区别的,另外就是调用的时候箭头右边就不用加$了;例如:

$myFoo->test();   //这里的test()是类里面的一个方法


还有就是类里面的
$this
可以在自家类的方法里面调用其他自己类的方法,这个东西千万不要忘记了
$
我就忘了很多遍

下面是例子:

<?php

class name{
public $a = 0;
public $b = 1;
public function a1(){
$this->a2();
}
public function a2(){
echo $this->b;
}
}

$n = new name();  //根据类实例化
$n -> a1();
echo $n->a;
//var_dump($n);
?>


5.11 魔术方法

public function __constuct()
{
}
//哎呀其实就是构造函数。。。。


5.12 文件包含

include,include_once,require,require_once的区别:

include你调用几次就加载几次,而include_once至加载一次

而require跟require_once的区别同上

include跟require的区别就是一旦出错require会终止而include会继续执行后面的代码

这几天的总结就这样吧。。明天开始捣鼓捣鼓数据库吧。。。。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: