php连接mysql数据库

      今天学习用php连接mysql数据库,写个博客总结一下。
要用php连接mysql数据库,那么我们首先就要连接到该数据库,我们使用下面的函数进行连接
$sql_link = mysql_connect("主机名","登入用户名","登入用户名密码");
如果连接成功,就会返回一个mysql句柄,可以简单的理解成这个$sql_link 是php跟mysql的一个桥梁,通过该桥梁我们可以进入到mysql。
进入到mysql之后,我们要选择一个数据库,对mysql进行操作,我们使用下面的函数进行选择一个数据库
mysql_select_db("数据库名","这个参数可以不要");
之后我们执行一些mysql语句,使用下面的函数
$result = mysql_query( "sql语句","这个参数可以不要");
执行一些mysql语句时,有两种情况:
1.没有返回结果,比如删除数据,修改编码什么的。
2.有返回结果,比如查询数据,此时我们用一个变量接收。例如下面的语句,返回的是一张表,可以看成是一个二维数组。
$result = mysql_query( "select * from person_list",$sql_link );//返回一个资源,目前是一张表
通过$result 可以知道这个表的很多信息,我们需要使用相应的函数来获取我们所需要的信息。
1.这个表有几个字段。
mysql_num_fields( $result );
2.这个表有几条记录。
mysql_num_rows( $result );
3.这个表的字段名字。
mysql_field_name( $result, $index );
4.以索引数组的方式,一条一条的获取这个数组,执行一次指针偏移一次。
mysql_fetch_row( $result );
5.以关联数组的方式,一条一条的获取这个数组,执行一次指针偏移一次。
mysql_fetch_assoc( $result );
6.自己指定指针的位置。
mysql_data_seek( $result, 3 );
7. 有时候我们对数据库进行操作,通过影响的行数来判断有没有成功。
mysql_affected_rows();//可以有参数
下面给出一个完成的代码,来演示读取数据信息(test 数据库下的 person_list表),并显示在页面上(还不会处理页面上乱码的问题)。
<?php
	header('Content-type: text/html; charset=UTF-8');

	//要连接的数据库的信息
	define("DB_HOST","localhost");//主机名
	define("DB_USER","root");//登入户名
	define("DB_USER_PWD","rootmysql");//登入用户密码

	//连接到数据库
	$sql_link = mysql_connect(DB_HOST,DB_USER,DB_USER_PWD);
	if( $sql_link )//判断是否连接成功
		echo "连接数据库成功<br />";
	else
		echo mysql_error( $sql_link )."<br />";
	
	$db_name = "test";//要连接哪个数据库
	mysql_select_db($db_name,$sql_link);

	$sql_sentence = "select * from person_list";//要执行的SQL语句
	//$sql_sentence = "desc person_list";//要执行的SQL语句
	$result = mysql_query( $sql_sentence,$sql_link );//返回一个资源,目前是一张表
	
	echo '<table border="1px" width="500px" height="400px">';
		echo '<tr>';
			for( $index = 0; $index < mysql_num_fields( $result ); $index++ )
				echo '<td>'.mysql_field_name( $result, $index ).'</td>';
		echo '</tr>';
		while( $row = mysql_fetch_row( $result ) )
		{
			echo '<tr>';
				foreach( $row as $value )
					echo '<td>'.$value.'</td>';//echo '<td>'.$value.' </td>';
			echo '</tr>';
		}
	echo '</table>';
?>
技术分享技术分享

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。