连接到一个 MySQL 数据库

在您能够访问并处理数据库中的数据之前,您必须创建到达数据库的连接。

在 PHP 中,这个任务通过 mysql_connect() 函数完成。
语法

mysql_connect(servername,username,password);

<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con){die('Could not connect: ' . mysql_error());}// some code?>

关闭连接

脚本一结束,就会关闭连接。如需提前关闭连接,请使用 mysql_close() 函数。

mysql_close($con);


1.查询操作header("Content-Type:text/html;charset=utf-8");// 1.获取连接
$link = mysql_connect('localhost','root','123456');if(!$link){die("连接错误" . mysql_error());
}else{echo 'Ok' . '<br/>';
}//2. 选择数据库
mysql_select_db('test',$link);//3. 设置操作编码
//保证php程序是按照utf8码操作
mysql_query("set names utf8");//4. 发送指令
$sql = 'select * from user1';
//$result 表示结果集,可以理解为是一张表,返回的结果集放在内存中
$result = mysql_query($sql,$link);//5. 接收返回结果,并处理
//mysql_fetch_row 会依次取出结果集$result的下一行数据复制给$row
//$row 是一个数组
while($row = mysql_fetch_row($result))
{//echo "<br/> $row[0] --- $row[1] --- $row[2]";foreach($row as $k=>$v){echo $k . '---' . $v ;}echo "<br/>";
}//6. 释放资源,即释放内存
mysql_free_result($result);//7. 关闭连接,这句话可以没有,但建议有。有的话也要过几分钟关闭
mysql_close($link);
2. 插入,删除,更新header("Content-Type:text/html;charset=utf-8");$link = mysql_connect('localhost','root','123456');if(!$link){die('cuo le' . mysql_error());
}mysql_select_db('test',$link) or die(mysql_error());mysql_query('set names utf8');$sql = "insert into user11(name,password,email,age) values('xiaoming',md5('123546'),'xiaoming@qq.com',20)";//删除操作
//$sql = "delete from user1 where id=5";//更新操作
//$sql = "update user1 set age = 100 where id = 4";//如果是dml操作,则返回bool
$result = mysql_query($sql,$link);if(!$result){echo "操作失败" . mysql_error();die();
}//看看有几条数据
if(mysql_affected_rows($link)>0){echo "操作成功";
}else{echo "没有影响到行数";
}//加上这句话会报错,因为返回的是bool值
//mysql_free_result($result);mysql_close($link);

封装工具类:

<?php
/*** Created by PhpStorm.* User: Hua* Date: 2015/10/18* Time: 15:18*/class SqlTool
{private $link;private $host = 'localhost';private $user = 'root';private $password = '123456';private $db = "test";public function __construct(){$this->link = mysql_connect($this->host,$this->user,$this->password);if(!$this->link){die("连接失败" . mysql_error());}mysql_select_db($this->db,$this->link);mysql_query("set names utf8");}//完成selectpublic  function execute_dql($sql){$result = mysql_query($sql) or die(mysql_error());return $result;}//完成update ,delete, insertpublic  function execute_dml($sql){$b = mysql_query($sql,$this->link);if(!$b){return 0;//失败}else{if(mysql_affected_rows($this->link)>0){return 1;//表示成功}else{return 2;//表示没有行数影响}}mysql_close($this->link);}
}
<?phpheader("Content-Type:text/html;charset=utf-8");require_once "SqlTool.class.php";//*************************dml********************************
/*$sql = "insert into user1(name,password,email,age) values('xiaoming',md5('123'),'xiao@qq.com',200)";$obj = new SqlTool();$res = $obj->execute_dml($sql);if($res == 0){echo "失败";
}else if($res == 1){echo "成功";
}else if($res == 2){echo "没有影响";
}*///************************dql********************$sql = "select * from user1";$obj = new SqlTool()();
$result = $obj->execute_dql($sql);
while($row = mysql_fetch_row($result)){foreach ($row as $k=>$v) {echo '---$v';}echo "<br/>";
}
mysql_free_result($result);

2. 在线词典

mainView.php<html>
<head><title>在线词典</title><meta http-equiv="content-type" content="text/html;charset=utf-8"/>
</head><body>
<h1>查询英文</h1>
<form action="wordProcess.php" method="post">请输入英文:<input type="text" name="enword"/><input type="hidden" value="search" name="type"/><input type="submit" value="查询"/>
</form>
</body>
</html>
wordProcess.php<?php// 接收英文单词require_once 'SqlTool.php';header("Content-type:text/html;charset=utf-8");if(isset($_POST['enword'])){$en_word = $_POST['enword'];
}else{echo "输入为空";echo "<a href='mainView.php'>返回重新查询</a>>";
}//看看数据库中有没有这条记录$sql = "select chword from words where enword='" . $en_word . "' limit 0,1";//设计表
//查询,可以使用工具类$sqlTool = new SqlTool();
$res = $sqlTool->execute_dql($sql);if($row = mysql_fetch_array($res)){echo $en_word . '对应的中文是' . $row['chword'];
}else{echo '没有这个词条';echo "<br/><a href='mainView.php'>重新返回查询</a>";
}mysql_free_result($res);
工具类:
SqlTool.php<?phpclass SqlTool
{private $link;private $host = 'localhost';private $user = 'root';private $password = '123456';private $db = "test";public function __construct(){$this->link = mysql_connect($this->host,$this->user,$this->password);if(!$this->link){die("连接失败" . mysql_error());}mysql_select_db($this->db,$this->link);mysql_query("set names utf8");}//完成selectpublic  function execute_dql($sql){$result = mysql_query($sql) or die(mysql_error());return $result;}//完成update ,delete, insertpublic  function execute_dml($sql){$b = mysql_query($sql,$this->link);if(!$b){return 0;//失败}else{if(mysql_affected_rows($this->link)>0){return 1;//表示成功}else{return 2;//表示没有行数影响}}mysql_close($this->link);}
}

41. PHP MySQL 连接数据库相关推荐

  1. mysql构造器_类和对象,类的构造器,魔术方法__get()和__set(),mysql连接数据库的方式--2018年8月30日11时38分...

    这一节课主要讲的是类和数据库的知识,主要是类和对象,类的构造器,魔术方法__get()和__set(),mysql连接数据库1. 什么是类 ?什么是对象?举例说明 答:类是对象的模板,对象是类的一个实 ...

  2. Mysql连接数据库异常汇总【必收藏】

    在Centos上部署项目发现一个奇怪的问题,数据库连接一直抛异常.于是花了两个小时搜了各种数据库连接异常导致的原因,最终问题得以解决.同时,把解决过程中搜集到的异常信息汇总一下,当大家遇到类似的问题时 ...

  3. MySQL连接数据库命令

    MySQL连接数据库命令 mysql –h主机名 -u用户名 -p密码 库名

  4. VSCode插件MySQL连接数据库

    VSCode插件MySQL连接数据库 安装插件 Ctrl+Shift+X 输入MySQL,点击install 连接MySQL数据库 点击浏览界面下方开源看到MYSQL,点击右边的加号 主机名,以本机为 ...

  5. MySQL连接数据库url的参数characterEncoding=UTF-8

    最近遇到数据库变更后,向数据库添加记录,中文读取或存入时变为???.本地MySQL数据库的字符集设置的是utf-8,IDE中项目的字符集也是utf-8,所以在切换数据库之前未发现问题.遇到这个问题后排 ...

  6. MYSQL 连接数据库命令收藏

    一.MySQL 连接本地数据库,用户名为"root",密码"123"(注意:"-p"和"123" 之间不能有空格) C: ...

  7. 中使用mysql连接失败_如何在命令行下使用 MySQL 连接数据库不用每次都输入密码?...

    点击上方☝SpringForAll社区 轻松关注! 及时获取有趣有料的技术文章 本文来源:http://rrd.me/g7J9e 我们知道在命令行下可以使用下面的命令连接 MySQL ,其中 xxx ...

  8. php 查看mysql连接数据库_php基础之连接mysql数据库和查询数据

    php基础之连接mysql数据库和查询数据 文章主要介绍了php连接mysql数据库和查询数据的方法和示例,需要的朋友可以参考下,就跟随百分网小编一起去了解下吧,想了解更多相关信息请持续关注我们应届毕 ...

  9. Mysql连接数据库的操作

    1 2 3 4 5 $link=mysql_connect("ip","数据库名",密码); mysql_select_db("库名",$l ...

  10. Mysql学习总结(41)——MySql数据库基本语句再体会

    1.数据定义语言(DDL):定义和管理数据对象,比如建立数据库.数据表 数据操作语言(DML):用于操作数据库对象中的包含的数据. 数据查询语言(DQL):用于查询数据库对象中包含的数据,能够对表进行 ...

最新文章

  1. 2022-2028年中国共享住宿行业深度调研及投资前景预测报告
  2. poj1364(差分约束+Bellman-ford)
  3. pytorch模型参数信息 计算模型的FLOPs
  4. python_ 学习笔记(hello world)
  5. 自动化C语言第一次月考试卷,145班《计算机组成与工作原理》第一次月考试卷...
  6. python 对象创建_从Python中的基类对象创建对象
  7. ios开发 热搜词demo_一场比赛16个热搜,uzi因焕烽躺枪,阿bin评价赛后太揪心
  8. 自制最小的无盘网络服务器,无盘网络终极制作2003服务器端安装准备
  9. struts2 mysql 乱码_struts2项目插入中文到mysql数据库乱码的解决方法
  10. webpack 热加载你站住,我对你好奇很久了
  11. Java VM(虚拟机) 参数
  12. 【毕设】requests+bs4+re 爬取知网文献来源的信息
  13. 二总线芯片RF601
  14. 【强化学习】Policy Gradient(策略梯度)算法详解
  15. linux 安装minio并设置开机自启动
  16. linux修改分辨率的命令,linux修改分辨率(命令)
  17. 最新版养猫小程序前端+后端搭建详细教程
  18. 移动电源最大多少毫安?移动电源多少毫安合适
  19. DM数据库配置开机自启动
  20. Django刨坑记-- Anaconda3 环境报错

热门文章

  1. fir.im Weekly - 聊聊 Google 开发者大会
  2. 2 . 8 注释和嵌入文档
  3. Erlang实战练习(一)
  4. 收集一些非常好用常用的用户函数。分享给大家参考。
  5. 如何写出整洁规范的R代码?是时候讨论一下代码规范性了
  6. Egret入门学习日记 --- 第十八篇(书中 8.5~8.7 节 内容)
  7. 在浏览器地址栏输入url的后的过程
  8. appium 原理解析(转载雷子老师博客)
  9. Linux下添加删除查看用户操作
  10. Python学习记录之----网络通信(二)