2012-09-13 48 views
2

我的數據庫名稱是學生,我的問題是我每次在php文件中包含數據庫名稱,使用include('student.php'); student.php文件連接mysql查詢語句。 這是正常的,但我想隱藏數據庫名稱的任何地方或其他人看不到數據庫和數據庫設置。如何在php文件中隱藏數據庫名稱

+0

您是否嘗試過使用'DEFINE(數據庫, 「DB_NAME」);'在一個單獨的包含文件?通常如果他們有權訪問服務器,他們會找到它。 –

+0

你仍然可以迴應它等... – Tschallacka

+0

我不知道這是否用於代碼查看/演示目的或類似的東西。 –

回答

1

我不知道這是否是正確的答案,但我們怎麼通常做這在Rails是通過在服務器上設置數據庫的設置環境變量(和地方),並有我們的應用程序使用這些環境變量來配置該數據庫連接。您可以在PHP應用程序中執行相同的操作,以便從編輯代碼和源代碼控制的人員中隱藏數據庫名稱(和密碼)。它也有助於部署到多個服務器。

0

你能做的最好的解決方案是建立數據庫與其中只有允許做正常的東西用戶鏡子,但不能訪問或刪除數據庫。

這樣,它並不重要你的學生做什麼或看到的數據庫。

+0

示例代碼是:dbconn.php <?php $ con = mysql_connect('localhost','root',''); mysql_selectdb( 「學生」,$ CON);?>這是dbconn.php文件,我使用包括( 'dbconn.php')包括任何其他PHP文件的數據庫連接;.但是我想不使用這種編碼的東西,我只使用php編碼在mysql中自動獲取數據庫。 –

+0

第一條評論... ***不要在代碼中登錄爲根***如果代碼中存在漏洞利用的任何途徑,那麼整個數據庫和服務器都可能受到黑客的擺佈。 在SQL服務器中創建一個新的用戶帳戶,並僅允許其擁有學生數據庫的基本權限。 然後使用用戶帳戶建立與數據庫的mysqli連接。 ***沒有根!永遠不要!***根目錄只能在登錄到phpmyadmin或其他數據庫管理軟件來管理數據庫時使用。 – Tschallacka

+0

推薦閱讀:http://php.net/manual/it/book.mysqli.php Mysql_方法停止/淘汰/因爲mysqli的 的depricated http://dev.mysql.com/doc/refman/5.1 /en/adding-users.html如何創建用戶。 – Tschallacka

相關問題