作者starjou (周星星)
看板PHP
标题Re: [请益] 将连线到资料库的动作写成一个function
时间Sun Apr 27 13:53:01 2008
※ 引述《Altas ()》之铭言:
: 已爬文
: 各位php高手~~小弟才刚开始接触到php没多久
: 今天老师出了一个问题~我想破头都想不出来
: 他把连线到mysql的动作写成一个function 放在一个名叫connect.php的网页中
: 内容为
: function connectdb_rw()
: {
: // Connect to the database for read and write acess
: if (@mysql_connect("servername", "username", "password"))
: if (@mysql_select_db("dbname"))
: return TRUE;
: return FALSE;
: }
: 然後要求在其它页中用这个function与资料库连线
: 不能用原本的$link = mysql_connect...blahblahblah
: 试很久还是没办法试出来
: 它function的回传值为boolean 我实在是不知道要怎麽用到其它页中
: 书也查了 goo也goo了 但是做不出来
: 请板上的高手为小弟解疑
: 谢谢大家<(_ _)>
呼叫这个函式的时候会做连结 MySQL Server 的动作,跟选择 database 的动作。
两者都成功,传回 true,否则传回 false。
你的程式要开始资料库操作前呼叫这个函式,如果传回值 true 就可以继续
资料库的操作,反之,连结或选择资料库失败,进行其它流程。
不知道你的问题是什麽?
如果你需要 $link 供其它程式码用
(通常是不必,除非你同时要连两个不同的 Server)
你可以让 function 传回参数。
function ...... (){
if($link = mysql_connect(.....)){
if( mysql_select_db(.......)){
return $link;
}
}
return false;
}
然後呼叫的时候给这个 function 一个接受的变数
$link = connectdb_rw();
一样有 $link 用。
一般单一 Server 操作其实连接完之後 $link 都没有再用到,有时连 $link 变数都
没设。connect 跟 select_db 之後,就直接 mysql_query, mysql_fecty..... 了
如果要存取不同的资料库,直接在 table 前加上资料库名
SELECT * FROM database_name.table_name ......
只要权限是正确的。
如果你一直传回 false,连接失败,在 connectdb_rw 的 function 里加上
or die(mysql_error()) 把错误讯息秀出来看看,
也许你的伺服器名称、帐号、密码或是权限有问题。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.81.203.98
1F:推 gpmm:有耐新的教学~推一个! 04/27 13:54
※ 编辑: starjou 来自: 219.81.203.98 (04/27 13:57)
2F:推 appleboy46:大推~ 04/27 15:33
3F:→ Altas:谢谢大大的指导<(_ _)> 感激不尽>o< 04/27 19:47
4F:推 LisaShie:刚开始学大概会不知道要在哪时候呼叫函数…推这篇教学 04/28 15:49