php+mysql的基础操作

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php+mysql的基础操作相关的知识,希望对你有一定的参考价值。

  php可以说是当下很火的一门后端语言了,它小巧玲珑,和html等前端语言配合的可以说是天衣无缝,加之xampp,wampp等工具的出现,更是前端开发者的福音,作为一名前端ER,如果不熟悉一门后端语言的话,那简直都不好意思说自己要加薪,那么我们对于php这门语言学习时,如果我们对js或者其他任何一门语言学的好的话,再去学习一门新的语言那是很好上手的,无非就是先从变量,常量,执行语句,循环条件判断,数组,函数,面向对象,加上这门语言的一些高级函数,什么date,画图,浏览器信息存储函数啦,逐个的去看去对比,真的很顺手有没有,那么我们今天就来看一下我们前端经常用到的一些php+mysql操作,这需要我们有一定的mysql基础了.

  当我们建好了一个表的时候,我们很自然的就会去想到,我们要怎么去查找信息,增加信息,修改信息,删除信息,那么这就是我们最基础的操纵了,在操作这个数据表之前,我们需要先找到它 代码1:

 1 //这里我们使用mysql_connect来进行数据库的链接,它一共有三个参数,分别是,数据库地址,用户名,用户密码,对于mysql的配置,我们可以使用shell命令行或者myphpAdmin进行界面配置
 2 $con = mysql_connect(‘localhost‘,‘root‘,‘123‘);
 3 if($con){
 4     echo "连接数据库成功";
 5 }
 6 else{
 7     echo mysql_error();
 8     echo "连接数据库失败";
 9 }
10 //当我们连接到了整个数据库后,我们需要去找到库中我们的小仓库,这里使用函数mysql_select_db(‘仓库名‘);
11 if(mysql_select_db(‘mysql‘)){
12     echo mysql_error();
13 }
14 
15 //设置转码字符
16 if(mysql_query(‘set names utf8‘)){
17 
18 }else{
19     echo mysql_error();
20 }

  需要说明的是,在php5之后,对于MySQL数据库操作的函数开头变为了mysqli,这两者的区别也是有的,mysqli的功能更强大,增加了面向对象功能,但它也是向下兼容的,在用法上二者有细微的差别,这里我们的实例都是使用的mysql开头的函数,当我们成功连接到数据库后,我们先来进行插入数据 代码2:

  

//首先我们先建立一个表单,指定提交方式为post,当提交时执行a.php文件
<?php 
    //此处执行代码1进行数据库连接功能,连接到数据库后
    $username = $_POST[‘username‘];//从超级全局变量中取到表单提交过来的值
    $password  = $_POST[‘password‘];
//这里就是我们的数据插入语句,其中uers是代码1中小仓库mysql总的一个表,表名为users;
$sql = "inset into users (username,password)values(‘$username‘,‘password‘)"; mysql_query($sql);//使用mysql_query()函数来执行sql语句来达到操作数据库,它就像是一个终端,可以执行我们输入的mysql操作语句, ?>

  对于代码2,首先是建立一个提交表单,每一输入框中设定它的name属性,每一个name属性就是超级全局变量数组$_POST中的key值,所以在php中我们可以获得提交的值,在插入语句的书写时,因为我们在php中的书写方式是以字符串的形式来书写的,所以不会有编译器的提示功能,就算写错 编译器也不会立马提醒你,所以在这块一定要多注意,特别是双引号,单引号嵌套的问题,当我们插入了一条语句后,那你说姓名数错了,我想要改一些,那么php当然可以改,那么在修改的时候我们就要注意了,修改不像插入一样,直接插入到了表尾,这是计算机就会问了,我要修改哪一个呢 代码3:

 1 //还是原来的表单,和原来不一样的配方,
 2 //在数据库中,我们给每一行记录都加一个ID,这个字段称为主键,我们将它设置为自增的.
 3 //我们在点击修改按钮时将id通过get方法传送过来,这是就可以通过id获得数据条了,
 4 //获得传过来的id值
 5 $id = $_GET[‘id‘];
 6 //执行mysql语句,返回选择中的资源
 7 $query = mysql_query("select * from article where id=$id");
 8 //通过mysql_fetch_assoc函数来将数据转换为一个关联数组,还有几个作用类似的函数,我们在代码5中介绍,
 9 $data = mysql_fetch_assoc($query);
10 <form action=‘b.php‘ method=‘post‘>
11     <input type = ‘text‘ name=‘username‘ value="<?php echo $data[‘username‘]?>"//将要修改的信息输出到修改框中
12     <input type = ‘text‘ name=‘password‘ vlaue="<?php echo $data[‘password‘?>"
13     <input type = ‘submit‘ value=‘提交修改‘ >
14 </form>

  好了,上边的代码,只是我们修改数据的一个准备工作,我们在修改前,需要将要修改的数据输出到修改界面中,这样用户可以直观的看到他修改了数据,不能将修改数据搞的像输入信息一样,那样体验性从何而来,代码4:

//这里就和我们插入信息时情况差不多了,
<?php
//首先执行代码1连接数据库
$id = $_POST[‘id‘];
$username=$_POST[‘username‘];
$password =$_POST[‘password‘];//获取表单修改后的值
//执行修改语句update
$updatesql = "update article set 
username=‘$username‘,password=‘$password‘where id=$id";
if(mysql_query($updatesql)){
    echo "<script>alert(‘修改文章成功‘);</script>";//修改成功
}else{
    echo "<script>alert(‘修改文章失败‘);</script>";
}
?>

  修改成功了我们的信息后,我们就来看一下php中常用的那些用来获取数据记录的函数:比如mysql_fetch_array,mqsql_fetch_assoc,mysql_fetch_row等等;代码5:

                             
   //$res是获取到的资源
    $row1= mysql_fetch_row($res);//返回了查询到的数据的第一条
    mysql_fetch_row每执行一次,都从资源也就是结果集中依次取一条数据,以数组形式返回出来,如果当前已经取到最后一条数据时,返回空结果
   $row2 = mysql_fetch_assoc($res);作用是返回一个关联数组,数组的下标就是我们在数据表中的字段名,这种方式我们可以随意的对每个字段进行操作.
   $row3 = mysql_fetch_object($res);//返回一个对象.
   $row4 = mysql_fetch_array($res);//mysql_fetch_array的第二个参数是一个关联数组: 也就是说返回的数据中有一个索引数组有一个关联数组,可以在其中传入第二个参数指定输出哪一个数组,MYSQL_ASSOC只输出关联数组
MYSQL_NUM:只输出索引数组,输出结果和mysql_fetch_row一样,但是它默认是输出两个数组.

 

  看完了我们的插入和修改信息,相信对于删除信息也是很简单的了,道理都是一样的,获取到数据条的id,然后依据id去进行删除:代码6:

$id = $_GET[‘id‘];
$deletesql = "delete from article where id=$id";
if(mysql_query($deletesql)){
    echo "<script>alert(‘删除文章成功‘);</script>";

}else{
    echo "<script>alert(‘删除文章失败‘);</script>";

}

  那么我们在实际应用中最多的另外一种情况就是查找信息了,我们可以用在数据库中信息查重,也可以用在用户登录信息的判断,数据库中的信息统计等:

//执行代码1进行数据库的连接
//接收到表单提交过来的信息,
$username = $_POST[‘username‘];
$password = $_POST[‘password‘];
//在这里,我们使用select语句去选择数据表中和username和password都相等的数据条,如果有,就证明我们输入的信息正确,能够登陆,否则,输入的信息不正确,
$sql = "SELECT * FROM users WHERE username=‘$username‘ and password=‘$password‘";
$res = mysqli_query($conn,$sql);
$row = mysqli_num_rows($res);
$self= mysqli_fetch_assoc($res);
if($row){
    echo "<script> alert(‘恭喜你,登录成功!‘);  
    </script>";
    header(‘location:../main.php?id=‘.$self[‘id‘]);

}else{
    echo "<script> alert(‘用户名或密码输入错误,请重新登录‘); window.location.href=‘../login.html‘;</script>";
}

  当然,文中的代码对于所获取到的值都没有进行是否为空的判断,和格式是否正确,这都是要加上去的,代码的完善性还不高,到这里,php对于mysql的基本操作算是介绍了个大概,一起加油!

 

以上是关于php+mysql的基础操作的主要内容,如果未能解决你的问题,请参考以下文章

PHP之路——MySql基础操作语句

开学前的快乐------小白的MySQL最基本使用操作学习记录

php最全基础,数组,函数,超全局变量,时间,回话,文件,php操作mysql

PDO操作MYSQL基础教程分享

php+mysql的基础操作

PHP基础(13)使用mysqli操作MySQL数据库