游戏人间
版主
  
风云山庄大少爷
UID 62639
精华
2
积分 14352
帖子 7229
金钱 14212 喜悦币
威望 20
人脉 120
阅读权限 100
注册 2004-12-21 来自 广西人在北京
状态 离线
|
   
PHP菜鸟进阶教程系列------之 第二部分 PHP与MYSQL编
PHP菜鸟进阶教程系列------之 第二部分 PHP与MYSQL编
前言:吹嘴部分
一、PHPMYADMIN的配置与使用;
二、PHP+SQL对MYSQL的操作基本;
三、SQL语法基础;
四、表单+PHP+MYSQL常应用实例(配有详细的说明);
附1:总结。
==================================================================================
前言
1、送给超级菜鸟-----无任何基础的鸟鸟们应该从哪里学起PHP?
http://www.phpx.com/happy/viewth ... 2138&highlight=
2、PHP菜鸟进阶教程系列------之 第一部分 PHP基础语法编
http://www.phpx.com/happy/viewth ... 2508&highlight=
上面是之前写的两篇文章,咱可是第一次写文章(以前写的全是交给老师不用负责任的 @_@ )逻辑没搞好的地方我只能表示呵呵,写的不是一般的乱(能不能看得明白俺写的就得看你的造化了^_^)。
《 PHP菜鸟进阶教程系列------之 第一部分 PHP基础语法编 》我已经简单的介绍了PHP的基础语法,因为PHP的基础语法并不是很困难,WEB编程对于初学的同学来说几乎最大的困难都集中在了对数据库的操作上,现在我们需要把PHP跟MYSQL数据库结合起来乱讲一通。
我如果以后还有心思写下去的话我也只写PHP+MYSQL的情况,至于说到PHP+MYSQL是最佳组合什么的废话我就不想提了,说了也没用,好与不好不是我吹了算,还得告时间去证明。
==================================================================================
第一章:PHPMYADMIN的配置与使用
一、PHPMYADMIN的配置(下载的时候最好下载中文版,不然看不明白别怪俺)。
下面的说明是针对2.8版本且是本地运行的环境下的配置,个人建议使用2.8。
找到:mysqladmin/libraries/config.default.php
//写上你phpMyAdmin的访问网址,本地可为:http://localhost/phpmyadmin/
$cfg['PmaAbsoluteUri'] = 'http://localhost/phpmyadmin/';
//mysql主机地扯,通常写mysql主机的IP,因为是在本地运行,所以用:localhost
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['auth_type'] = 'http'; // 登录方式
$cfg['Servers'][$i]['user'] = 'root'; // MySQL用户名
$cfg['Servers'][$i]['password'] = ''; // MySQL数据库密码
二、PHPMYADMIN的使用。
以下部分图片来源http://blog.yusg.com/read.php?50
1、建数据库。
[align]
看上图,图的是别人的版本是 2.5.6-rc2 的,但这不影响我们的学习,基本大体理论上差不多有可能就可以看得明白的(不要下个英文版的来问我为什么你看不明白)。
左边有可以下拉的东东,下拉菜单里的就是你所有的数据库,如图中的有三个数据库。
现在看右边的“创建一个新的数据库[文档]”,在它附近找到可以输入文字的地方,输入“myweb”后,点击“创建”就可以创建一个数据库了。
2、建数据表。
[align]
如上图(2.8有点不一样,但我相信你能从这里看明白),名字即数据表名,字段数即为你打算在这个数据表里有多少个字段。
现在我们要建的表填的是,名字:mytable,字段数:3 ,点击执行后就出现如下窗口了。
[align]
如上图,第一列的字段即为字段名,类型为该字段的数据类型,长度/值,null即是否允许空值,默认即为默认值......
一般情况下的“额外”和“主键”有且只有一个是选“auto_increment”和“主键”。
3、插入数据........其它部分你自己慢慢研究,先会这三个动作就好了,以后你再加强吧。
[align]
[align]
==================================================================================
第二章:PHP+SQL对MYSQL的操作基本
<?php <%
''''''''''''''''''''''''''''''''''打开与数据库的链接'''''''''''''''''''''''''
'在ASP中,用来存取数据库的对象统称ADO(Active Data Objects) '主要含有三种对象:Connection、Recordset 、Command 'Connection:负责打开或连接数据 'Recordset:负责存取数据表 'Command:负责对数据库执行行动查询命令 '上面这段复制人家的,俺写起来没他们这么专业
dim conn,mdbfile mdbfile=server.mappath("数据库名称.mdb") set conn=server.createobject("adodb.connection") conn.open "driver={microsoft access driver (*.mdb)};uid=admin;pwd=数据库密码;dbq="&mdbfile
''''''''''''''''''''''''''''''''''建立记录集对象''''''''''''''''''''''''''''' '“记录集对象”这东西可不好解释,而且我们今天也不是要学ASP来着,只是拿让我们把ASP '与PHP对数据库的操作做个对比而已
set rs=server.createobject("adodb.recordset") rs.open SQL语句,conn,3,2
'''''''''''''''''''''''''用个循环把数据集中的数据输出'''''''''''''''''''''''''
While not rs.EOF ' 判断是否已经到数据集的结尾,如果还没到结尾就输出
response.write rs("name")
rs.movenext ' 把数据集的指针向后移动一个单位 Wend
''''''''''''''''''''''''''''''''''关闭所数据库的链接'''''''''''''''''''''''''
'关闭与数据库的链接俺忘记啥写了^_^
%> ?> 好好看看上面的代码,有没有什么不对劲的地方?要是感觉很正常的话你就不正常了。
确实,上面这一段是ASP的代码,我写出来是让我们后面有个对比,可能你会觉得这样容易理解一些。我当年就是这样干的,拿着ASP代码跟PHP代码比。
ASP对数据库的操作基本上是:打开与数据库的链接 -> 用SQL语句取出数据,建立记录集对象 -> 输出 ->关闭与数据库的链接。而PHP呢,其实也是差不多的了。
■●●PHP对mysql数据库的操作步骤:打开与mysql服务器的链接 -> 打开数据库 -> 执行具体sql语句 -> 关闭与服务器的链接.
一、与mysql服务器的链接。
连接数据库mysql服务器,在php中提供了两个函数:1、mysql_connect(); 2、mysql_pconnect();-->> mysql_connect建立的连接将自动关闭,mysql_pconnect而是一种稳固持久的连接。一般情况下用mysql_connect的比较多,如果你需要使用到mysql_pconnect请自己详细的阅读手册关于这个函数的详细解释。
<?PHP
/*
mysql_connect函数是用来与mysql服务器链接用的。
我们只需要提供:mysql数据库的主机IP(本地用localhost)、数据库用户名、数据库密码。
mysql_connect在打开与服务器链接的同时,返回一个值,我们把这个值赋给变量$connect。
*/
$connect = mysql_connect("localhost","user","password") or die ("数据库打开失败");
/*
mysql_connect如果返回False(0值),则显示“数据库打开失败”,下面的PHP代码将不会再执行下去。
*/
?>
二、打开数据库。
<?PHP
$select = mysql_select_db("myweb",$connect) or die ("数据库打开失败");
?>
三、执行具体sql语句。
<?PHP
// 把sql语句放到变量$sql中
// 插入数据
for ( $I=1; $I<=10; $I++ )
{
$sql s= "INSERT INTO `mytable` ( `id` , `username` , `password` )";
$sql .= " VALUES ( '', '游戏人间".$I."', '00000".$I."' )";
$query = mysql_query($sql,$connect);
$query = mysql_query($sql,$connect);
}
// 下面我们来把数据库中的所有数据都显示出来
$sql = "SELECT * FROM `mytable` LIMIT 0 , 30 ";
// LIMIT 0 , 10 表示从第一条数据开始读取,取出10条数据
$query = mysql_query($sql,$connect);
/*
mysql_fetch_array把当前指针所在的数据读取出来、指针向后移动一个单位、并把所得的数据以数组形式返回,下面的部分还增加了把返回的数据赋给$r的操作。
*/
while( $r=mysql_fetch_array($query) ) //返回的数据为真值,即还有数据,则输出
{
echo 'ID:'.$r["id"].' ';
echo 'ID:'.$r["username"].' ';
echo 'ID:'.$r["password"].' <BR>';
}
//当返回的值是0值时,已经再无数据,则退出循环,结束数据的读取。
?>
四、关闭与服务器的链接。
<?PHP
// 如果后面的参数为空,则关闭最近打开的链接
// 最后关闭与服务器的链接
mysql_close($connect);
?>
五、综合以上部分代码:
<?PHP
$connect = mysql_connect("localhost","user","password") or die ("数据库打开失败");
$select = mysql_select_db("myweb",$connect) or die ("数据库打开失败");
for ( $I=1; $I<=10; $I++ )
{
$sql = "INSERT INTO `mytable` ( `id` , `username` , `password` )";
$sql .= " VALUES ( '', '游戏人间".$I."', '00000".$I."' )";
$query = mysql_query($sql,$connect);
}
$sql = "SELECT * FROM `mytable` LIMIT 0 , 30 ";
$query = mysql_query($sql,$connect);
while( $r=mysql_fetch_array($query) ) //返回的数据为真值,即还有数据,则输出
{
echo 'ID:'.$r["id"].' ';
echo 'ID:'.$r["username"].' ';
echo 'ID:'.$r["password"].' <BR>';
}
mysql_close($connect);
?>
六、更多的实例。
<?PHP
//创建一个数据库,并创建一个数据库,最后插入几条数据
$connect = mysql_connect("localhost","user","password") or die ("数据库打开失败");
//建库
$sql = "CREATE DATABASE `myweb1`";
mysql_query( $sql );
$select = mysql_select_db("myweb1",$connect) or die ("数据库打开失败");
//建表
$sql = "CREATE TABLE `mytable` (`id` INT NOT NULL AUTO_INCREMENT , ";
$sql .= "`name` VARCHAR( 32 ) NOT NULL , `password` VARCHAR( 32 ) NOT NULL ,";
$sql .= "PRIMARY KEY ( `id` ) ) TYPE = MYISAM ";
mysql_query( $sql );
//用循环插入几条数据
for ( $I=1; $I<=10; $I++ )
{
$sql = "INSERT INTO `mytable` ( `id` , `username` , `password` )";
$sql .= " VALUES ( '', '游戏人间".$I."', '00000".$I."' )";
$query = mysql_query($sql,$connect);
}
//显示数据
$sql = "SELECT * FROM `mytable` LIMIT 0 , 30 ";
$query = mysql_query($sql,$connect);
while( $r=mysql_fetch_array($query) ) //返回的数据为真值,即还有数据,则输出
{
echo 'ID:'.$r["id"].' ';
echo 'ID:'.$r["username"].' ';
echo 'ID:'.$r["password"].' <BR>';
}
mysql_close( $connect );
?>
今天就先写到这里了,还有 SQL语法基础、表单+PHP+MYSQL常应用实例(配有详细的说明)、附1:总结......等,待续
| 
群号:6025396/6025252/19520091(广西PHP交流/PHP高级编程/算法交流)、饿踢Blog
寧可在嘗試中失敗,也不在保守中成功!
不為失敗找理由,只為成功找方法!
|
|