24)PHP,数据库的基本知识

(1)数据库操作的基本流程:

    

1     •    建立连接(认证身份)
2     •    客户端向服务器端发送sql命令
3     •    服务器端执行命令,并返回执行的结果
4     •    客户端接收结果(并显示)
5     •    断开连接

 

(2)php中操作数据库的基本代码和流程

 

  

 1 基本流程:
 2 1,连接数据库:
 3 $mylink  =  mysqli_connect(“localhost”,  ‘root’,  ‘123’);
 4 2,设定连接编码(通常是utf8)
 5 mysql_set_charset(“utf8”);            //也可以使用:mysql_query(“set names utf8”);
 6 3,选择数据库(如有需要)
 7 mysql_select_db(“数据库名”);        //也可以使用:mysql_query(“use  数据库名”);
 8 4,执行sql命令。
 9 $result  =  mysql_query( “几乎任何sql语句 ”);
10 返回的结果通常需要分两种情形进行处理:
   4.1:如果是无返回数据的语句:
   4.1.1 如果$result为true,表示执行成功
   4.1.2 如果$result为false,表示执行失败
   4.2:如果是有返回数据的语句:
   4.2.1  如果$result为false,表示执行失败
   4.2.2  否则,执行成功,需要继续从结果中取出数据并显示出来。

 

 

(3)上面代码样例展示:

        所选的数据库:thkphp5,管理员是root,密码是root,表格是zixun,里面的数据展示:

我的PHP代码:

 1 <?php
 2     
 3     
 4    $link= mysqli_connect('localhost','root','root');
 5 //    mysqli_character_set_name();
 6     mysqli_query($link,"set names utf8");
 7     mysqli_select_db($link,'thkphp5');
 8     $sql='select * from zixun';
 9    $result=mysqli_query($link,$sql);
10     while( $record = mysqli_fetch_array($result )){
11         //mysql_fetch_array()函数的作用类似foreach对数组的作用:遍历(结果集)
12         //它每次去的结果集的“一行数据”,并“装入”到数组 $record 中
13         //该数组的下标就是该select的字段名,值就是对应行的数据值
14         echo "\n";
15         echo "****" . var_dump($record) . "****";
16         echo "\n";
17     }
18   
19 ?>

上面的是展示那个zixun表格的所有数据,现在我显示其中的   'Zid'   一项数据:

 1 <?php
 2     
 3     
 4    $link= mysqli_connect('localhost','root','root');
 5 //    mysqli_character_set_name();
 6     mysqli_query($link,"set names utf8");
 7     mysqli_select_db($link,'thkphp5');
 8     $sql='select * from zixun';
 9    $result=mysqli_query($link,$sql);
10     while( $record = mysqli_fetch_array($result )){
11         //mysql_fetch_array()函数的作用类似foreach对数组的作用:遍历(结果集)
12         //它每次去的结果集的“一行数据”,并“装入”到数组 $record 中
13         //该数组的下标就是该select的字段名,值就是对应行的数据值
14         echo "\n";
15         echo "****" . $record['Zid'] . "****";
16         echo "\n";
17     }
18   
19 ?>

结果展示:

 

1 补充php操作mysql的函数:
2 $record  =  mysql_fetch_array( 结果集$result );
3 $n1 = mysql_num_rows(  结果集$result ):  获取结果集的行数
4 $n2 = mysql_num_fields(  结果集$result ):  获取结果集的列数
5 mysql_field_name( 结果集$result, $i  ): 获取结果集中的第i个字段名(i从0开始)

 

  比如:我再插入一个数据,代码展示:

 1 <?php
 2     
 3     
 4    $link= mysqli_connect('localhost','root','root');
 5 //    mysqli_character_set_name();
 6     mysqli_query($link,"set names utf8");
 7     mysqli_select_db($link,'thkphp5');
 8     $sql='INSERT  into zixun(ZX_id,ZX_name,ZX_fenlei,ZX_zuozhe,gengxin_time,liulan_cishu,fabu_zhuangtai) values(100020,\'english\',\'理论\',\'王超\',\'2017-08-10 12:58:01\',100,\'草稿\');';
 9    $result=mysqli_query($link,$sql);
10    if($result){
11        echo "插入成功!!!";
12    }else{
13        echo "插入失败!!!!";
14    }

然后结果展示:

 

 那个100020就是我们的插入数据

posted @ 2017-08-10 12:42  小油菜1  阅读(232)  评论(0编辑  收藏  举报