看板 PHP 關於我們 聯絡資訊
※ 引述《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
gpmm:有耐新的教學~推一個! 04/27 13:54
※ 編輯: starjou 來自: 219.81.203.98 (04/27 13:57)
appleboy46:大推~ 04/27 15:33
Altas:謝謝大大的指導<(_ _)> 感激不盡>o< 04/27 19:47
LisaShie:剛開始學大概會不知道要在哪時候呼叫函數…推這篇教學 04/28 15:49