Re: [請益] 將連線到資料庫的動作寫成一個function

看板PHP作者 (周星星)時間17年前 (2008/04/27 13:53), 編輯推噓3(301)
留言4則, 4人參與, 最新討論串2/2 (看更多)
※ 引述《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

04/27 13:54, , 1F
有耐新的教學~推一個!
04/27 13:54, 1F
※ 編輯: starjou 來自: 219.81.203.98 (04/27 13:57)

04/27 15:33, , 2F
大推~
04/27 15:33, 2F

04/27 19:47, , 3F
謝謝大大的指導<(_ _)> 感激不盡>o<
04/27 19:47, 3F

04/28 15:49, , 4F
剛開始學大概會不知道要在哪時候呼叫函數…推這篇教學
04/28 15:49, 4F
文章代碼(AID): #1851I_-X (PHP)
文章代碼(AID): #1851I_-X (PHP)