仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 957|回复: 18
打印 上一主题 下一主题

[学习教程] PHP网页编程之PHP毗连数据库的办法(2)

[复制链接]
只想知道 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-4 00:04:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
在学习PHP这六个月里,每看到一个优秀的php脚本,就会兴奋的手舞足蹈,嘴里还不停的说:太酷了,太酷了。呵呵,很幼稚吧,但这可能就是兴趣。   

if($field_value==""){

echo "<td> </td>";

}

else{

echo "<td>$field_value</td>";

}

}

echo "</tr>";

}

echo "</table>";//表格输入停止

mysql_free_result($rst) or die("没法释放result资本!");//释放result资本

}

else{

echo "今朝该表中没有任何数据!";

}

mysql_close($server) or die("没法与办事器断开毗连!");//断开毗连并释放资本

?>

开放数据库毗连(ODBC)已成为一种与数据库停止通讯的工业尺度。PHP也供应了尺度的接口,使得PHP能挪用Access,SQL SERVER等数据库。其相干函数是:

(1)integer odbc_connect(string dsn, string user, string password)

毗连到一个ODBC数据库源名字上。

(2)integer odbc_exec(integer connection, string query)或 odbc_do(integer connection, string query)

在一个毗连上履行查询。

(3)boolean odbc_fetch_row(integer result, integer row)

从一个了局集中获得一行数据。Row参数是可选的,若为空白,则前往下一个无效行。在了局集中不再残剩行时前往false。

(4)boolean odbc_close(integer connection)

封闭一个数据库的毗连。若在该毗连上有翻开的事务,则前往一个毛病,并且毗连不会被封闭。

最初,仍是看个分页的例子:

<?

//设定每页显示条数

$show_num = 10;

$spages = $pages;//防止$pages前期被改动

//界说毗连

$dsn = "localhost";

$user = "sa";

$password = "";

//盘算总纪录数

$rs_num = "select count(*) as id from bbs where zu='0' and lei='".$lei."'";

$conn_id = odbc_connect($dsn,$user,$password);

$rnum = odbc_exec($conn_id,$rs_num);

while(odbc_fetch_row($rnum)){

$total_rs = odbc_result($rnum,"id");//将总纪录数放入$total_rs变量

}

//盘算与页有关的条数

$nnn = $total_rs / $show_num;//盘算总页数

$hnnn = intval($nnn);//将总页数取整

$cnnnn = $nnn - $hnnn;

//盘算所需总页数

switch ($cnnn){

case "0":

$hnnn++;

$nnn = $hnnn;//总页数

break;

default :

$nnn = $hnnn;//总页数

break;

};

if ($nnn == 0)$nnn++;

//盘算页面改动所需的前提

$fore = $pages;

$next = $pages;

$fore -= 1;

$next += 1;

if ($fore > 0) {

echo "<a>首页</a>";

echo "<a>前页</a>";

};

if ($pages < $nnn) {

echo "<a>后页</a>";

echo "<a>尾页</a>";

};

echo "共".$nnn."页";

$query_string = "SELECT * FROM table where condition order by you wanted order";

$cur = odbc_exec($conn_id,$query_string);

//取到轮回的顶部

$cnum = ($pages-1) * $show_num;//盘算以后的纪录游标的地位

//空轮回到显示纪录游标处

if ($cnum != 0){

for ($i=0;$i<=$cnum;odbc_fetch_row($cur)){$i++;};

};

$i=1;

//显示纪录

while(odbc_fetch_row($cur)){

echo ;

if ($i == $show_num){//在不满页数时跳出法式

break;

};

$i++;

};

//封闭毗连

odbc_close($conn_id);

?>

Oracle(甲骨文)是世界上最为盛行的关系数据库。它是大公司推重的工业化的强无力的引擎。咱们先看看其相干的函数:

(1)integer ora_logon(string user , string password)

入手下手对一个Oracle数据库办事器的毗连。

(2)integer ora_open(integer connection)

翻开给出的毗连的游标。

(3)integer ora_do(integer connection, string query)

在给出的毗连上履行查询。PHP生成一个唆使器,解析查询,并履行之。

(4)integer ora_parse(integer cursor, string query)

解析一个查询并筹办好履行。

(5)boolean ora_exec(integer cursor)

履行一个先前由ora_parse函数解析过的查询。

(6)boolean ora_fetch(integer cursor)

此函数会使得一个履行过的查询中的行被取到唆使器中。这使得您可以挪用ora_getcolumn函数。

(7)string ora_getcolumn(integer cursor, integer column)

前往以后的值。列由零入手下手的数字索引。

(8)boolean ora_logoff(integer connection)

断开对数据库办事器的链接。

以下是向ORACLE数据库拔出数据的示例法式:

<html>

<head><title>向ORACLE数据库中拔出数据</title></head>

<body>

<form action="<?echo $PHP_SELF;?>" method="post">

<table border="1" cellspacing="0" cellpadding="0">

<tr>

<th>ID</th>

<th>name</th>

<th>Description</th>

</tr>

<tr>

<td><input type="text" name="name" maxlength="50" size="10"></td>

<td><input type="text" name="email" maxlength="255" size="30"></td>

<td><input type="text" name="Description" maxlength="255" size="50"></td>

</tr>

<tr align="center">

<td colspan="3"><input type="submit" value="提交">  <input type="reset" value="重写"></td>

</tr>

</table>

</form>

<?

//先设置两个情况变量ORACLE_HOME,ORACLE_SID

putenv("ORACLE_HOME=/oracle/app/oracle/product/8.0.4");

putenv("ORACLE_SID=ora8");

//设置网页显示中文

putenv("NLS_LANG=Simplified_Chinese.zhs16cgb231280");

if($connection=ora_logon("scott","tiger")) {

//库表test有ID,name,Description三项

$sql = 'insert into test(ID,name,Description) values ';

$sql .= '('' . $ID . '','' . $name . '',''. $Description . '')';

if($cursor=ora_do($connect,$sql)) {
可以说你的马步已经扎的差不多了,接下来就要开始练把势的时候了,如果有条件的话,用笔或者打印一个简易的PHP手册在身上,时不时的摸出来看看,记得,去WC也不能放过(^2^)。
老尸 该用户已被删除
沙发
发表于 2015-2-4 08:25:04 | 只看该作者
当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标,
透明 该用户已被删除
板凳
发表于 2015-2-9 20:02:47 | 只看该作者
我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。
谁可相欹 该用户已被删除
地板
发表于 2015-2-23 00:32:24 | 只看该作者
这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己
兰色精灵 该用户已被删除
5#
发表于 2015-3-4 17:39:41 | 只看该作者
Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81
若相依 该用户已被删除
6#
发表于 2015-3-11 20:33:00 | 只看该作者
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
只想知道 该用户已被删除
7#
 楼主| 发表于 2015-3-17 12:07:20 | 只看该作者
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
不帅 该用户已被删除
8#
发表于 2015-3-17 18:21:38 | 只看该作者
这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。
简单生活 该用户已被删除
9#
发表于 2015-3-24 12:55:54 | 只看该作者
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
飘灵儿 该用户已被删除
10#
发表于 2015-4-8 06:42:25 | 只看该作者
做为1门年轻的语言,php一直很努力。
爱飞 该用户已被删除
11#
发表于 2015-4-9 06:26:48 | 只看该作者
做为1门年轻的语言,php一直很努力。
变相怪杰 该用户已被删除
12#
发表于 2015-4-16 02:08:53 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
飘飘悠悠 该用户已被删除
13#
发表于 2015-4-17 23:23:37 | 只看该作者
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
金色的骷髅 该用户已被删除
14#
发表于 2015-4-18 14:57:41 | 只看该作者
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
15#
发表于 2015-4-21 21:10:42 | 只看该作者
基础有没有对学习php没有太大区别,关键是兴趣。
灵魂腐蚀 该用户已被删除
16#
发表于 2015-5-3 07:20:39 | 只看该作者
对于初学者来说不推荐去拿钱买的。当然如果一个网站你经常去用,而且里面的资料也比较有用,最好还是买个会员比较好,毕竟那些也是别人的工作成果。
再现理想 该用户已被删除
17#
发表于 2015-6-4 01:44:22 | 只看该作者
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
乐观 该用户已被删除
18#
发表于 2015-6-12 08:47:35 | 只看该作者
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
柔情似水 该用户已被删除
19#
发表于 2015-6-15 02:37:00 | 只看该作者
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-20 23:44

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表