实例讲解php数据访问
本文实例为大家分享了两种php数据访问方式,大家可以进行比较,分析两种方式的异同,最后为大家提供了一个小练习,具体内容如下 方式一:已过时,只做了解 1.造一个连接(建立通道) $db=mysql_connect("localhost","root","123");nbsp;nbsp;nbsp;nbsp; //括号内是“服务器地址”,“用户名”,“密码” 2.选择操作哪个数据库 mysql_select_db("mydb","$db"); 3.写sql语句 $sql="select * from Info"; 4.执行sql语句 $result=mysql_query($sql);nbsp;nbsp;nbsp;nbsp;nbsp; //query 有查询之意 5.从结果集($result)中取数据 $row=mysql_fetch_row($result); //每执行一次读取一行数据 $row1=mysql_fentch_row($result); //执行第二条数据 var_dump($row); //读取全部数据用循环: while($row=mysql_fetch_row($result)) { var_dump($row); } 方法二:面向对象 1.造一个连接对象: $db=new MySQLi("localhost","root","123","mydb")nbsp; //括号内的内容依次为“服务器地址”,“用户名”,“密码”,“数据库名称” 2.判断连接是否出错: 2.1 mysqli_connect_error();nbsp; //代表连接出错 2.2 if(mysqli_connect_erroe()) nbsp;nbsp;nbsp;nbsp;nbsp;nbsp; { echo "连接失败!"; exit();nbsp; //退出程序 nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp; } nbsp; 2.3 !mysqli_connect_error or die ("连接失败!"); //“or”前面代表连接正确,后面代表连接失败 3. 写sql语句: $sql="select * from nation"; 4. 执行sql语句:如果执行成功返回结果集对象,如果执行失败返回false $result=$db-gt;query($sql); 5.从结果集中读取数据,先判断是否有数据 if($result) { //返回一行数据的索引数组,每次执行返回一条数据 var_dump($result-gt;fetch_row()); while($row=$result-gt;fetch_row) { var_dump($row); } //返回一行数据的关联数组,每次执行返回一条数据 var_dump($result-gt;fetch_row()); //通过二维数组返回所有数据 var_dump($result-gt;fetch_all()); //以对象的方式返回一行数据 var_dump($result-gt;fetch_object()); } 练习: 1.以下拉菜单的形式在页面显示nation表 $db=new MySQLi("localhost","root","","mydb"); !mysqli_connection_erroe() or die ("连接失败!"); $sql="select*from nation"; $result=$db-gt;query($sql); if($result) { $att=$result-gt;fetch_all(); echo "lt;selectgt;"; foreach ($att as $value) { echo "lt;option value='{$value[0]}'gt;{$value[1]}lt;/optiongt;"; } echo "lt;/selectgt;"; }nbsp; nbsp; 2. 把Info表查出来,以表格的形式显示 $db=new MySQLi("localhost","root","","mydb"); !mysqli_connecton_error() or die("连接失败!"); $sql="select * from info"; $result=$bd-gt;query($sql); if($result) { $att=$result-gt;fetch_all(); echo "lt;table border='1' width='100%' cellpadding='0' cellspacing='0'gt;"; echo "lt;trgt;lt;tdgt;代号lt;/tdgt;lt;tdgt;姓名lt;/tdgt;lt;tdgt;性别lt;/tdgt;lt;tdgt;民族lt;/tdgt;lt;tdgt;生日lt;/tdgt;lt;/trgt;"; foreach ($att as $value) { echo "lt;trgt; lt;tdgt;{$value[0]}lt;/tdgt; lt;tdgt;{$value[1]}lt;/tdgt; lt;tdgt;{$value[2]}lt;/tdgt; lt;tdgt;{$value[3]}lt;/tdgt; lt;tdgt;{$value[4]}lt;/tdgt; lt;/trgt;"; } echo "lt;/tablegt;"; } //也可以用for循环 if($result) { $arr=$result-gt;fetch_all(); echo "lt;table border='1' width='100%' cellpadding='0' cellspacing='0'gt;"; echo "lt;trgt;lt;tdgt;Codelt;/tdgt;lt;tdgt;Namelt;/tdgt;lt;tdgt;Sexlt;/tdgt;lt;tdgt;Nationlt;/tdgt;lt;tdgt;Birthdaylt;/tdgt;lt;/trgt;"; for($i=0;$ilt;count($arr);$i++) { echo "lt;trgt; lt;tdgt;{$arr[$i][0]}lt;/tdgt; lt;tdgt;{$arr[$i][1]}lt;/tdgt; lt;tdgt;{$arr[$i][2]}lt;/tdgt; lt;tdgt;{$arr[$i][3]}lt;/tdgt; lt;tdgt;{$arr[$i][4]}lt;/tdgt; lt;/trgt;"; } echo "lt;/tablegt;"; } 以上就是本文的全部内容,希望对大家学习php程序设计有所帮助。 (编辑:济南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |