台灣最大程式設計社群網站
線上人數
892
 
會員總數:246713
討論主題:190131
歡迎您免費加入會員
討論區列表 >> MySQL >> 請教各位大大 mysql &php連線問題
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
請教各位大大 mysql &php連線問題
價值 : 100 QP  點閱數:2318 回應數:7
樓主

TingWen Wang
門外漢
0 2
16 2
發送站內信


你好!想請問
我有把apache,php,phpadmin,mysql安裝完成
在本機loaclhost的狀態下測試我撰寫的網頁.php也都沒問題可以連線
但現在問題是我把網頁丟到我的伺服器(Ftp)上就無法連線了
那請問我該設定甚麼地方讓網頁在伺服器上抓到我的資料庫
是我的connmysql.php裡面設內容還是說資料庫的權限設定?
謝謝






搜尋相關Tags的文章: [ mysql ] , [ 伺服器 ] , [ 連線 ] ,
本篇文章發表於2015-10-12 15:49
1樓
回應

迷路
捐贈 VP 給 迷路 檢舉此回應
無法連線?
是指無法開啟頁面?還是資料庫連線失敗?

另外丟到伺服器是指?
你到底是在本機還是在外面的主機?
本篇文章回覆於2015-10-12 17:54
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

TingWen Wang
檢舉此回應
抱歉!解釋的不夠清楚,我要把我在本機(127.0.0.1)寫的網頁丟到網路上運行,但不知如何設定我的連線。
//資料庫主機設定
$db_host = "localhost";
$db_table = "member";
$db_username = "root";
$db_password = "1234";
//設定資料連線
if (!@mysql_connect($db_host, $db_username, $db_password)) die("資料連結失敗!");
//連接資料庫
if (!@mysql_select_db($db_table)) die("資料庫選擇失敗!");
//設定字元集與連線校對
mysql_query("SET NAMES 'utf8'");


在本機(127.0.0.1)上讀取我的php網頁是可以運行資料的
但是上傳到(21.66.204.90)就無法執行。
謝謝
本篇文章回覆於2015-10-12 18:02
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

迷路
捐贈 VP 給 迷路 檢舉此回應
所以你是在本機安裝了apache,php,phpadmin,mysql
之後又再另一台電腦(21.66.204.90)安裝了同樣的系統

在本機端測試網頁和資料庫時OK
等到同樣的網頁和資料庫上傳到另一台電腦時就不行了?

請先測試單純的輸出hello的PHP是否可以執行?
如果不行,代表另一台電腦連PHP都有問題
這時請在測試純粹的HTML是否可以開啟?
如果也不行,代表APACHE或是網路連線本身就有問題
本篇文章回覆於2015-10-13 10:02
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

TingWen Wang
檢舉此回應
感謝你的回答
不過我應該是要這樣解釋的 我在192.168.1.....(應該要申請固定IP對吧!?)安裝資料庫
而在21.66.204.90並沒有裝資料,只是我放.php .html的空間而已
網頁在21.66.204.90,要如何設定去連我的192.168.1.90的資料庫
謝謝
本篇文章回覆於2015-10-13 11:15
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
不錯的參考

笨笨工程師
檢舉此回應
一般的php虛擬主機都有支援mysql
有的虛擬主機的host就是直接設為localhost
如果要往外連到你家的mysql
必須是正式的ip(對外的)
192.168.xx.xxx是你電腦的內部ip
連不上是正常的
本篇文章回覆於2015-10-13 23:56
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
最有價值解答

迷路
捐贈 VP 給 迷路 檢舉此回應
$db_host = "localhost";
這個要改成資料庫的實際IP
但是你的電腦查詢IP時會查到192.168.X.X的系列
我猜你應該是用數據機連線再當成分享器分享到電腦上
這樣就算你查到電腦真正上網的IP,估計也是無法連線成功的
個人建議還是像「笨笨工程師」提出的連資料庫都用虛擬主機商
這樣在設定上才容易
本篇文章回覆於2015-10-14 09:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
在這婸〝一下何謂本機。

loaclhost大多數就是所謂的127.0.0.1。也就是目前程式放置的機器位置。
所以當你在自家的主機。mysql也在自家的機器上。自然就可以取得資料
因為程式內的loaclhost就是代表你的自家主機。

但是當你將程式上傳到a主機。
則程式內的loaclhost就不是你自家主機了。而是該a主機了。

這時候你將a主機內的loaclhost,得要改成你自家主機的ip。才有可能連到。
為何我會說才有可能。

因為mysql的帳號也有區分loaclhost、全部全機(%)、指定主機(ip)的權限。
一般權限預設是loaclhost。

所以當外部主機連進來時。就會因為沒有權限而無法連結。
本篇文章回覆於2015-10-16 16:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.