2014-02-22 63 views
0

我想在表單中鏈接一個動作一個PHP腳本:但是它回來與錯誤路徑父在HTML表單操作字符串忽略

<form action='../includes/RC_APP/process_login.php' method="post" name="login_form"> 

: 所請求的網址/包括/ RC_APP /process_login.php在此服務器上未找到。

的PHP包括做工精細:

<?php 
include_once '../includes/RC_APP/db_connect.php'; 
include_once '../includes/RC_APP/functions.php'; 

我唯一的想法是,在HTML不會處理Web服務器文檔根目錄,而PHP將上述訪問;但是這與將PHP包含文件保存在Web服務器文檔根目錄之外的安全建議相矛盾。

任何意見將不勝感激。

+0

使用基本路徑,然後使用您的目錄和文件名。 –

+0

謝謝,我認爲basepath是一個PHP函數而不是HTML;會查找並澄清。 – Roddy

+0

爲什麼直接發佈到includes目錄中的文件?似乎有點奇怪.. – Ohgodwhy

回答

0

您需要在頭部設置基本路徑。

這樣的:

<head> 
<base href="your_site/sub_directory/"> 
</head> 

的基礎標籤使一切環節不同,包括同一頁面的錨鏈接到基礎代碼的網址,而不是,如:

<a href='?update=1'>A link to this page</a> 

成爲

<a href='your_site/sub_directory/?update=1' title='Some title'>A link to the base tag's page instead</a> 

如果你需要去基地路徑中相同目錄中的另一個文件夾,例如一個文件夾包含在basep ATH目錄鏈接,通過這種方式:

<a href='includes/'>A link to this page</a> 

,如果你需要去的基本路徑的另一父文件夾如文件夾包括:

<a href='..includes/'>A link to this page</a> 

看到更多的細節:Is it recommended to use the <base> html tag?

+0

嗨,謝謝你的答案,但我不知道這將如何緩解這個問題,因爲它不是文檔根的子目錄是問題,而是文檔根目錄之上的目錄。 即使使用HTML標頭中的Base標籤,錯誤也是一樣的;它似乎在放棄../父指示符。 – Roddy

+0

我想我已經找到了我的問題的答案,因爲表單操作無法訪問文檔根目錄之上的任何內容: http:// stackoverflow。com/questions/11390420/html-form-action-using-a-php-file -a-root-directory – Roddy