2016-05-03 82 views
1

我有足夠的經驗來使用CakePhp框架在PHP中構建網站,但現在我正在嘗試構建像其他人一樣的網站,其中GUI被授予用戶通過提供配置/安裝網站主機,數據庫名稱,用戶名,密碼,其中網站有一個名爲「install.php」的文件,它需要數據庫詳細信息來連接和創建數據庫。如何通過用戶界面安裝php項目來安裝數據庫

這裏我的問題來了,當網站提示用戶輸入數據庫的詳細信息後,獲得主機,數據庫名稱,用戶,密碼的值;我們運行databse.sql文件來創建數據庫,但之後我們的項目如何知道用戶名,密碼,數據庫名稱,連接的主機,因爲通常我們在php文件中編寫數據庫憑證來配置,所以我們如何處理我們之間的連接PHP網站和數據庫。

一個解決方案我正在考慮在數據庫配置文件中編寫一些關鍵字,並將其替換爲用戶提供的詳細信息。

如果你有更好的解決方案,請指導我。

+0

我認爲它的工作原理與您的想法相同。基本上應該有一個文件名爲settings.php,在該文件中添加變量,然後用用戶輸入替換所有的變量值,並確保這個settings.php文件是常見的,因此可以在所有php頁面中調用變量和所有配置。 – JiteshNK

+0

感謝您的建議 – coder

+0

還有一件事,首先在運行安裝時,您必須檢查是否設置了這些變量,否則當您遷移現有網站時,它會產生問題並且每次都要求您提供全新的安裝。 – JiteshNK

回答

2

我找到答案了這個

的config.php:

return array(
    'host' => 'localhost', 
    'username' => 'not-defined', 
); 

setting.php:

$config = include 'config.php'; 
$config['username']= 'root'; 
file_put_contents('config.php', '<?php return ' . var_export($config, true) . ';'); 

更新的config.php現在包含以下內容:

return array(
    'host' => 'localhost', 
    'username' => 'root', 
); 

你可以添加添加/以相同的方式更新其他屬性。

相關問題