mysq_php操作mysql_登录注册案例

作者: 鲁智深 分类: PHP 发布时间: 2015-09-25 11:49

php操作mysql

开启扩展php_mysql.dll,在php.ini中,去掉前面的分号。

php操作mysql主要分成如下步骤:

1、连接mysql数据库

返回资源 mysql_connect(地址,用户名,密码);

resourse mysql_connect(“localhost”,”usename”,”passwrod”);

1
2
          //连接数据库
          $con = mysql_connect("localhost","root","");

2、选择一个数据库

bool mysql_select_db($dbname,$con);

1
2
3
4
         //选择数据库
     $dbname = "car";
     $res = mysql_select_db($dbname,$con);
     mysql_query("set names utf8");

3、执行sql

resource mysql_query(sql);

1
2
3
4
5
6
7
8
     //写sql语句
     $searchSql = 'select * from books';
     //插入sql语句
     $insertSql = "insert into books(bName,btypeId,publishing,price,pubDate,author,ISBN) values
     ('php','2','航空出版社',58,'2014-05-11','鲁智深',755474244)"
;
     
     //执行sql
     $res = mysql_query($searchSql);

4、从mysql_query()结果集解析数据

array mysql_fetch_row(查询出来的resource);

1
2
3
4
5
6
7
     //定义数组
     $resArr = array();
     //获取记录
     /*while($item = mysql_fetch_row($res)){
         $resArr[] = $item;
     }
     var_dump($resArr);*/

说明:每次执行,只能从结果集中取出一条记录,所以需要while重复执行

返回值:索引数组

array mysql_fetch_assoc(查询出来的resource);

1
2
3
4
5
     //获取记录
     /*while($item = mysql_fetch_assoc($res)){
         $resArr[] = $item;
     }
     var_dump($resArr);*/

说明:每次执行,只能从结果集中取出一条记录,所以需要while重复执行

返回值:关联数组

array mysql_fetch_array(查询出来的resource);

1
2
3
4
5
     //获取记录
     while($item = mysql_fetch_array($res)){
         $resArr[] = $item;
     }
     var_dump($resArr);

说明:每次执行,只能从结果集中取出一条记录,所以需要while重复执行

返回值:既有关联数组,又有索引数组

5、获取结果集的记录数

int mysql_num_rows(查询);

1
2
3
     //查看结果集记录
     $titemNum = mysql_num_rows($res);
     var_dump($titemNum);

6、返回被影响的行数

int mysql_affected_rows(mysql连接成功返回的resource);

1
2
3
     //返回被影响的行数
     $rowNum = mysql_affected_rows($con);
     var_dump($rowNum);

注意:统计的是最后一条插入,删除,修改,查询语句影响行数

7、释放结果集资源

mysql_free_result(查询出来的resource);

1
2
3
     //释放结果集资源
     $res = mysql_free_result($res);
     var_dump($res);

8、断开mysql数据库连接

bool mysql_close(连接返回的资源);

1
2
3
     //断开mysql数据库连接
     $res = mysql_close($con);
     var_dump($res);

登录注册案例

案例用户登录注册(前台文件)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
     header("Content-type:text/html;charset=utf-8");
     if(isset($_GET['action'])){
         $action = $_GET['action'];
     }else{
         echo "<a href='index.php?action=log'>登录</a> | <a href='index.php?action=reg'>注册</a>";
         exit();
     }
?>

<?php if($action == "reg"){?>
<form action="doaction.php" method="post">
   用户名:<input type="text" name="username"/><br/>
   密码:<input type="password" name="password"/><br/>
   <input type="hidden" name="action" value="reg"/><!--隐藏域-->
   <input type="submit" value="注册">
</form>
<?php}else{?>
<form action="doaction.php" method="post">
   用户名:<input type="text" name="username"/><br/>
   密码:<input type="password" name="password"/><br/>
   <input type="hidden" name="action" value="long"/><!--隐藏域-->
   <input type="submit" value="登录">
</form>
<?php }?>

案例用户登录注册(php执行文件)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
     $username = $_POST['username'];
     $password = $_POST['password'];
     
     $link = mysql_connect("localhost","root","");
     mysql_select_db("car",$link);
     $action = $_POST['action'];
     //执行注册
     if($action == 'reg'){
         $regSql = "insert into user(username,password) values('{$username}','{$password}')";
         $res = mysql_query($regSql);
         echo $res?"恭喜你,注册成功":"注册失败";
     }else{
         //执行登录
         $sreachSql = "select * from user where username='{$username}' and password='{$password}'";
         $res = mysql_query($sreachSql);
         $ifuser = mysql_num_rows($res);
         if(!$ifuser){
             echo "用户名或密码有误";
         }else{
             //设置会话
             echo "登录成功";
             //一般会header到一个页面
         }
     }
?>

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注