2011-11-03 45 views
0

我想知道包含文件的範圍。我測試了它,但它不起作用,我不確定我的問題是範圍。如果我能做到這一點,我會在其他部分尋找問題。我可以連接到php文件中的數據庫,然後在不連接的情況下在包含文件中進行查詢嗎?

父文件

mysql_connect("ip and port","name","password"); 
mysql_select_db("fskea1"); 

在包含文件

mysql_query("select * from blabla). 

給我

警告:請求mysql_query()[function.mysql查詢]:拒絕訪問用戶 'ODBC'@'localhost'(使用密碼:NO) D:\ Home \ fskea1.com \ httpdocs \ wquest \ register .php on line 20警告: mysql_query()[function.mysql-query]:在D:\ Home \ fskea1.com \ httpdocs \ wquest \ register.php中建立到服務器的鏈接 在 行20

更新:我試圖添加連接到子包含文件,現在它的工作原理。出乎意料的是,我需要連接到每個PHP文件中的數據庫。

回答

0

它應該工作 - 我自己做了一個網頁上的子表單。

如果使用include('xyz.php')導入了包含的文件,那麼它將工作正常。不知道它是否會通過readfile工作 - 從來沒有嘗試過。

0

是的,這是可能的。

您可能有variable scope問題。有關更多信息,您需要顯示一些代碼。

+0

我嘗試添加到孩子的連接包括文件,現在它的工作原理。出乎意料的是,我需要連接到每個PHP文件中的數據庫。 –

+0

@Uğurnope,你絕對不需要那樣做。你如何做include()?你包含一個本地文件而不是'http://',對嗎? –

0

這一直爲我工作:

<?php 

function openDB() { 
    $link = $GLOBALS['link']; 
    if (!isset($link)) $link= @mysql_connect('host', 'user', 'pw'); 
    if (!$link) { 
     return 0; 
    } elseif (!mysql_select_db('database-name', $link)) { 
     return 0; 
    } else { 
     return $link; 
    } 
} 

$link = openDB(); 

然後,在別處:

<?php 
if (!$link) $link = openDB(); 
mysql_query("select * from blabla"); 
相關問題