2012-12-06 25 views
3

我是新手。如何訪問web根外的sql登錄信息

我有一個php腳本位於這裏/var/www/check_login.php包括純文本的sql登錄信息。該文件被訪問通過<form name="" method="post" action="check_login.php">

,以驗證我的登錄頁面/var/www/login.php正確的用戶憑據,我想存儲check_login.php公司外部網站的根目錄,因此它不能被遠程訪問。

如何讓login.php訪問網頁根目錄之外的check_login.php

我猜它不是那麼簡單,action="/var/<new folder outside of root>/check_login.php

謝謝!與憑證

回答

1

移動文件到上一級目錄和文件check_login.php

include('../credentials.php'); 
+0

謝謝!不勝感激。 – Wheezy

0

爲您的數據庫連接信息創建一個新的頁面並移動到/var/

然後,您可以使用HTML action="check_login.php"

,並在你的check_login.php腳本,使用的Gustek建議的解決方案:

include('../credentials.php');

1

你在正確的軌道上。在/ var/www中爲您的網站創建一個不同的文件夾。我喜歡做這樣的設置:

/var 
---/www 
-------/mysite 
----------/html 
----------/config 
----------/lib 

等在Apache中,我告訴它我的文檔家是

/var/www/mysite/html

,然後我存儲任何配置文件(如MySQL憑證或類)中/var/www/mysite/config。然後,我可以包括與像這些文件:

require_once("/var/www/mysite/config/mydbcreds.php")

在你的榜樣,login.php需要打電話給你的檢查功能,在這個文件中,並且有能力,如果你需要將它收錄到。 Check out my answer here關於如何使用MySQL連接類,可以節省您一些時間和頭痛。

+0

真棒謝謝你。 – Wheezy

0

您可以簡單地使用include('path of folders/ your_ logging_data .php);

0

如果您使用的是共享主機方案,我只需在我的網站根目錄外創建一個新文件夾,並將所有非公開文件放在那裏。然後在您的網站的php.ini文件中,我將編輯include路徑以包含此新文件夾。在你的.php文件中,簡單的把require("the-non-public-file.php");放在頂部,即沒有絕對路徑。

相關問題