三种方式

mysql扩展

mysqli扩展

pdo_mysql扩展

查询本地环境安装了那些扩展

php -m

宝塔安装mysql后如何连接_sql

mysql扩展连接数据库方法

//利用mysql扩展库连接数据库

//获取链接

$conn=mysql_connect("localhost","root","955219");

if(!$conn)

{

//显示错误信息

die("连接数据库失败".mysql_error());

}

else

{

echo "成功
";

}

//选择数据库

mysql_select_db("practice");

//设置字符集

mysql_query("set name utf8");

//发送sql语句

$sql="select * from user";

$res=mysql_query($sql,$conn);

//接收结果并处理

var_dump($res);

// mysql_free_result($res);

mysql_close($conn);

while($row=mysql_fetch_row($res))

{

echo "
";

var_dump($row);

echo "
";

// echo "$row[0]------$row[1]------$row[2]";

foreach ($row as $key=>$val)

{

echo "------$val";

}

}

//释放链接,关闭资源

//释放结果集

mysql_free_result($res);

//关闭连接(这句话可以没有,没有什么用,写这句话之后链接也不是马上关闭的)

//mysql_close($conn);

?>

mysqli扩展连接数据库方法

连接数据库服务器

1)资源 mysqli_connect(服务器地址,用户名,密码)

宝塔安装mysql后如何连接_宝塔安装mysql后如何连接_02

补充:mysqli_connect默认对一个服务器只连接一次

设置连接编码

1)形式1:mysqli_query($link,''set  names xxx'')

mysqli_query(connection,query,resultmode);

宝塔安装mysql后如何连接_mysql_03

返回true

2) 形式2:mysqli_set_charset($link,"utf8");

宝塔安装mysql后如何连接_原声链接mysql_04

3)怎么确定用哪种?

客户端当前执行脚本的界面是什么字符集,就设定成什么字符集

选定要使用的数据库

1)多用)形式1:mysqli_query($link,''xxxxx'')

宝塔安装mysql后如何连接_数组_05

2)形式2:mysqli_select_db($link,''xxxx'')

关闭连接

主动释放链接:MySQL服务器的链接资源是有限的,不用了需要释放(脚本执行结束系统也会自动释放)

1)mysqli_close($link)

宝塔安装mysql后如何连接_宝塔安装mysql后如何连接_06

执行增删改操作

mysqli_query函数返回true或者false,原因有二:1sql指令本身错误,2执行失败

宝塔安装mysql后如何连接_sql_07

做个专门负责数据库初始化的脚本:之后要操作数据库包含该脚本即可

宝塔安装mysql后如何连接_sql_08

1,2,3)mysqli_query($link,''inset /delect/update.......'');

宝塔安装mysql后如何连接_宝塔安装mysql后如何连接_09

宝塔安装mysql后如何连接_sql_10

执行查询操作

成功返回结果集:sql指令没有错误,但如果查询结果本身为空返回也是true;失败为false:sql指令有错误

宝塔安装mysql后如何连接_mysql_11

成功返回

宝塔安装mysql后如何连接_宝塔安装mysql后如何连接_12

获得结果集行数

1)mysqli_num_rows()

宝塔安装mysql后如何连接_数组_13

解析结果集

1)mysqli_fetch_assoc():获取关联数组,表的表单名字作为数组下标,元素值作为数组元素值

宝塔安装mysql后如何连接_mysql_14

2)mysqli_fetch_row():获取索引数组,只获取数绝对值,数组下标从0开始

宝塔安装mysql后如何连接_原声链接mysql_15

指针下移了

3)mysqli_fetch_array():获取关联或者索引数组,一个记录取两次,一组是关联数字,一组是索引数组,但是可以通过第二个参数决定获取方式;

MYSQLI_ASSOC:只获取关联数组

MYSQLI_NUM:只获取索引数组

MYSQLI_BOTH:获取全部

宝塔安装mysql后如何连接_数组_16

结果集通常操作:获取所有

pdo连接mysql

try{$dbh =newPDO('mysql:host=localhost;dbname=test',$user,$pass);foreach($dbh->query('SELECT * from FOO')as$row){print_r($row);}$dbh =null;}catch(PDOException$e){print"Error!: ".$e->getMessage()."
";die();}?>