服务器和客户端
客户端 程序: 通过浏览器直接运行
服务器 程序: 通过安装某种服务器软件   程序才可以运行
             apache   php文件
             tomcat   jsp文件
             iis      .asp文件   .net
 
服务器文件必须在某种协议下运行   http 和  https      默认端口号  80
 
页面输出
echo  
    能够输出一个及以上的字符串
print
    只能输出一个字符串,且始终返回1
注意:echo比print快,因为没有返回值
 
php语法
语法规范:
   1、语句结束后必须有 分号
   2、严格区分大小写 
   3、所有的标点符号都是英文半角状态
 
变量定义 
   1、必须使用$开始
   2、字符串和变量之间可以用(.)拼接
   3、php中的双引号可以自动识别变量
 
三大结构  
  顺序  
  选择   if     switch
  循环   for  while  do...while() 以小括号结尾要加分号
 
数组 
  索引数组 
    用下标取值(从0开始)
    数组长度用count($arr)表示
  关联数组  
    "键"=>"值"
    根据键取值 
  多维数组
    数组嵌套数组
print_r()打印整个数组
 
函数
 
客户端如何向服务器请求
1、表单的name属性传值
2、超链接的url路径传值
3、ajax向服务器传递数据
4、jsonp请求接口
 
 php 服务器如何接受前端数据
$_GET[]   接收通过get方式请求的数据
$_POST[]  接收通过post方式请求的数据
$_REQUEST[]  既可以接收get方式  也可以接收post方式请求的数据  
 
php生成动态网页的原理  
服务器操作数据的更新过程,这样的数据就是动态生成的数据   数据显示到页面后,这样的网页也叫动态网页
当服务器解析到的是html文件时,直接返回至浏览器解析服务器返回的数据
当服务器解析到的是php文件时,会继续进入php解析器中,在返回到服务器直至返回浏览器解析服务器返回的数据
 
php如何将一个数组转成json  
json_encode() 将php的数组转成json对象  (一般数组是一个关联数组)  返回json对象
 
xss 攻击  
什么是xss  : 跨站脚本攻击  cross site scripting    为了不和层叠样式表混淆,叫做xss
用户输入一些具有特定含义的字符  数据提交到服务器上,这些特殊的字符可以被服务器识别
 
如何解决 : 
    前端正则 (不能彻底解决xss攻击问题 :  内行编程者会将html代码复制到另一个页面上   实现攻击效果 )
    最好解决办法:后端验证  (去掉标签)   在php中通过 strip_tags(要去掉标签的元素) 函数去掉标签
    
 
数据库 mysql
数据库 
    存放数据的仓库   U盘   硬盘
       数据库中存放的数据都是被结构化的数据 
    mysql语句中不分大小写
 
常见数据库语言 
    sqlServer    mysql      oracle     db2      
 
结构化 
    数据库中的数据 就是以表格的形式存在的   
    表格是由行和列组成
 
字段
    每一列的标题
 
表数据
    标题的对应的内容
 
关系型数据库
    数据库由多张表构成   每一个表示由多行多列组成
 
存放数据
第一步:创建数据库
    create database 数据库名
 
第二步: 创建表
    create table 表名
    (
       字段名  类型,
       字段名  类型,
       ....     
    )
 
第三步: 
    对表中的数据进行 “增   删   改   查”
       "增删改" 返回的是受影响的行数
    增
        insert into 表名(字段1,字段2,...)values(值1,值2,...)   
        主键自增的字段数据忽略不填  如果值的类型是字符,值必须加引号
    删
        delete from 表名 where 条件
        条件说明:
        表示等于  用  =
        表示并且   用 and
        表示或者   用  or
        如果条件字段值是字符  必须加引号
    改 
        update 表名 set 字段=新值,字段=新值 where  条件
 
    查 
        select * from  表名    查询表所有字段数据
        select 字段名,字段名2 from  表名   查询指定字段
    
数据类型 :
    int  表示整型数据(数值型)  默认长度是(11)
    char(100)  表示字符类型     varchar(100)    字符类型必须提供长度值  
主键 
    primary key  
    一般一张表中的 编号 字段为主键
特点 
    数据不能重复(具有唯一性)
    不能为空
    一般主键是自增的  auto_increment
如何设置主键:
        create table 表名
        (
            sid int primary key  auto_increment  sid字段为   主键  并且是自增的
        )       

php基础和数据库的更多相关文章

  1. JPBM4.4基础及数据库说明

    JPBM4.4基础及数据库说明 对jBPM4.4数据库的几张表简单介绍: A.资源库和运行时表结构 JBPM4_DEPLOYMENT   流程定义表                           ...

  2. mysql基础篇 - 数据库及表的修改和删除

    基础篇 - 数据库及表的修改和删除         修改和删除 一.实验简介 本节实验中,我们将学习并实践如何对数据库的内容做修改,删除,重命名等操作. 二.实验准备 在正式开始本实验内容之前,需要先 ...

  3. Vc数据库编程基础MySql数据库的表查询功能

    Vc数据库编程基础MySql数据库的表查询功能 一丶简介 不管是任何数据库.都会有查询功能.而且是很重要的功能.上一讲知识简单的讲解了表的查询所有. 那么这次我们需要掌握的则是. 1.使用select ...

  4. Vc数据库编程基础MySql数据库的表增删改查数据

    Vc数据库编程基础MySql数据库的表增删改查数据 一丶表操作命令 1.查看表中所有数据 select * from 表名 2.为表中所有的字段添加数据 insert into 表名( 字段1,字段2 ...

  5. Vc数据库编程基础MySql数据库的常见库命令.跟表操作命令

    Vc数据库编程基础MySql数据库的常见操作 一丶数据库常见的库操作 1.1查看全部数据库 命令:  show databases 1.2 创建数据库 命令: Create database 数据库名 ...

  6. Python进阶----数据库的基础,关系型数据库与非关系型数据库(No SQL:not only sql),mysql数据库语言基础(增删改查,权限设定)

    day37 一丶Python进阶----数据库的基础,mysql数据库语言基础(增删改查,权限设定) 什么是数据库:    简称:DataBase ---->DB    数据库即存放数据的仓库, ...

  7. .NET面试题解析(11)-SQL语言基础及数据库基本原理

      系列文章目录地址: .NET面试题解析(00)-开篇来谈谈面试 & 系列文章索引 本文内容涉及到基本SQL语法,数据的基本存储原理,数据库一些概念.数据优化等.抱砖引玉,权当一个综合复习! ...

  8. SQL基础之数据库

    1.基础概念 首先要强调一点,就是我们的数据库是由数据库系统来管理的,我们登入数据库并在其上进行操作时最终均要通过数据库系统来完成.可以理解成在数据库上进行操作的是客户端,数据库系统是服务端.一个数据 ...

  9. mongodb基础系列——数据库查询数据返回前台JSP(二)

    上篇博客论述了,数据库查询数据返回前台JSP.博客中主要使用Ajax调用来显示JSON串,来获取其中某一个字段,赋给界面中的某一个控件. 那这篇博客中,我们讲解,把后台List传递JSP展示. Lis ...

  10. mongodb基础系列——数据库查询数据返回前台JSP(一)

    经过一段时间停顿,终于提笔来重新整理mongodb基础系列博客了. 同时也很抱歉,由于各种原因,没有及时整理出,今天做了一个demo,来演示,mongodb数据库查询的数据在JSP显示问题. 做了一个 ...

随机推荐

  1. 【opencv基础】Rect类的神奇用法

    前言 最近看github上源码发现对两个cv::Rect使用相与(&)操作,猛地感觉自己蒙啦,Rect类还有这种神奇用法?!翻看opencv官网Rect类,果然如此! opencv中Rect类 ...

  2. JavaScript 之call , apply 和prototype 介绍

    1. 前言 为什么将这三个概念放在一起说.原因是这些是会在实现js 继承会需要使用到的 2. call 和 apply call 和 apply 的作用基本类似, 都是去执行function并将这个f ...

  3. HihoCoder - 1501:风格不统一如何写程序

    时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi写程序时习惯用蛇形命名法(snake case)为变量起名字,即用下划线将单词连接起来,例如:file_name. ...

  4. Boosting学习笔记(Adboost、GBDT、Xgboost)

    转载请注明出处:http://www.cnblogs.com/willnote/p/6801496.html 前言 本文为学习boosting时整理的笔记,全文主要包括以下几个部分: 对集成学习进行了 ...

  5. TensorFlow笔记-07-神经网络优化-学习率,滑动平均

    TensorFlow笔记-07-神经网络优化-学习率,滑动平均 学习率 学习率 learning_rate: 表示了每次参数更新的幅度大小.学习率过大,会导致待优化的参数在最小值附近波动,不收敛:学习 ...

  6. CentOS7.4 删除virbr0 virbr0-nic虚拟网卡

    本文摘抄自  https://www.cnblogs.com/cloudos/p/8288041.html 在CentOS 7的安装过程中如果有选择相关虚拟化的的服务安装系统后,启动网卡时会发现有一个 ...

  7. actor model vs tasked based parallizm

    举例子:计算pi actor model概念:一般有n个actor(task),和一个调度线程(本身也是一个actor)调度线程负责向每个task发送命令执行计算,以及接收每个task的结果并归并到一 ...

  8. Jupyter和IPython

    Jupyter内核就是IPython(Interactive Python):你看到的按tab键能够自动提示/补齐都是IPython实现的. IPython其实不只限于IPython,其实你看到的ID ...

  9. CF 914F Substrings in a String——bitset处理匹配

    题目:http://codeforces.com/contest/914/problem/F 可以对原字符串的每种字母开一个 bitset .第 i 位的 1 表示这种字母在第 i 位出现了. 考虑能 ...

  10. MyBatis持久层框架使用总结 转载

    MyBatis持久层框架使用总结   MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google co ...