您现在的位置:首页 >> 前端 >> 内容

前台与PHP与Mysql三者的联系

时间:2018/5/31 10:26:35 点击:

  核心提示:三者之间的联系:前台获取数据库里面的数据,提交数据到数据库,都要通过php(就是我们说的后台),php充当桥梁。下面就以简单的订餐来介绍三者之间具体要做什么事。一、前台1、前台,通俗来说就是展示给用户...

三者之间的联系:前台获取数据库里面的数据,提交数据到数据库,都要通过php(就是我们说的后台),php充当桥梁。下面就以简单的“订餐”来介绍三者之间具体要做什么事。

一、前台

1、前台,通俗来说就是展示给用户看的页面,那么我们在写页面的时候就要考虑到,我们要展示什么,在页面的展示位置以及数据从哪来。今天要说的这个小例子就是:我们先利用Ajax向后台发送请求,后台执行连接数据库操作,将获取的数据传送给前台,前台就获取了菜单,展示在页面上,然后用户开始点餐,点好之后将提交数据到后台,后台再将数据写入数据库。在这里,我们以form表单提交数据。

2、获取与提交数据前台要写的代码:

①获取数据库数据:具体的过程都有注释,注意,form的action属性值是提交数据的接口,而Ajax的open方法里面是获取数据的接口,一定要注意区分。

前台与PHP与Mysql三者的联系

二、后台

1、从数据库获取数据,后台要写的代码:

①连接数据库:$link=mysqli_connect("localhost","root","","mydb");

备注:参数1,本地;参数2,root(这里根据具体的项目可更改);参数3,数据库密码(我们没有密码,就设置为空);参数4,数据库名称(就是包含着很多数据表的)。

②连接错误处理(这步在平时练习时可以忽略,为了严谨,我们还是加上吧):

前台与PHP与Mysql三者的联系

③写操作数据库的语句:

例如:查询,因为我们这里是要从后台获取数据,所以用查询。代码如下:

$sql="select * from menu1";//select * from 表名;表示查询数据表menu1里面的所有数据。

④将上述操作语句写入连接:$result=mysqli_query($link,$sql);

⑤查询成功,我们获取所有的数据$data=mysqli_fetch_all($result,MYSQLI_ASSOC);

备注:如果查询成功 ,就会返回一个结果集对象;可以使用结果集对象方法来获得记录;第一个方法fetch_all,返回所有的结果;MYSQLI_ASSOC 以关联数组的形式输出结果;MYSQLI_NUM,以数字下标的形式输出结果,此为默认。

⑥写好之后关闭连接:

mysqli_close($link);

特别提醒:上述的②⑥在不要求严谨的情况下可以省略,但是①③④⑤一定不能省。下图很醒目,主要操作的几步:

前台与PHP与Mysql三者的联系

2、将数据通过后台提交到数据库,后台要写的代码:(注意加粗的代码)

首先判断用户提交的数据是否为空:

if(!empty($_POST["btn"])){

//循环遍历用户选择的checkbox的“id”;

foreach($_POST['id'] as$key =>$val){

//$val 用户选择的id值,需要转化,确保数据安全。

$menu_id=intval($val);

//订餐份数num_id;

$amount=intval($_POST['num_'.$menu_id]);

//前天数据转化好了以后就要提交数据了,还是老一套,首先建立连接

$link = mysqli_connect("localhost","root","","mydb");

//解决乱码问题

mysqli_set_charset($link,"utf8");

根据前台动态生成数组时,拼接的data[i].id取值从数据库取值。

$sql="select name,price from menu1 where id=".$menu_id;

$result=mysqli_query($link,$sql);

$row=mysqli_fetch_ASSOC($result);

//生成sql语句

$date = date("Y-m-d H:i:s");

$sql = "insert into orderlist(menu_name,menu_price,amount,createDate)";

$sql .=" values ('{$row['name']}','{$row['price']}','$amount','$date')";

//将操作语句写入连接

$result = mysqli_query($link,$sql);

//关闭连接

mysqli_close($link);

}

总结:上述就是完整的前后台与数据库之间的操作,当然这里只是最最基础的内容,后期都是在此基础之上拓展。

Tags:前台 台与 与P PH 
作者:网络 来源:qq_4070476