我是一個php編程的新手,我會用mysql db構建一個php站點。現在我不知道Web程序員經常在他的網頁中插入db連接函數。哪裏把db連接功能放在網頁上
回答
將連接和連接設置分離爲例如connect.inc.php
和config.inc.php
將設置存儲在config.inc.php中,並從connect.inc.php中調用該文件(require_once()
)。然後從您正在處理的頁面調用connect.inc.php(例如index.php)
這幾乎是我在頁面上做的第一件事,設置了一些默認值(通常使用外部配置文件)。
這確實意味着每個頁面視圖都會涉及一個數據庫連接,這可能不是嚴格需要的,但它們往往不在我編寫的腳本中。
這樣,您就知道您隨時都可以隨時查詢您的數據庫。
沒有連接池,這可能會導致一些重大的頭痛。 – cmbuckley 2012-02-06 15:17:23
真的嗎?怎麼會這樣? – 2012-02-06 15:19:47
這非常取決於情況。
一個小系統可能會簡單地使用一個require("db_connection_script.inc.php")
加載數據庫連接信息,然後從那裏運行查詢。這具有簡單的優點,但會使連接打開的時間超過必要的時間。另外,請確保如果某人自己運行db_connection_script.inc.php
,他們將無法訪問任何您不想發佈的信息!
這聽起來像上述是你的情況的最佳選擇,但我會包括一些其他用法的完整性的例子。
如果您希望創建一個更大的面向對象的應用程序,您還可以創建一個帶有表對象的數據庫對象來映射數據庫本身的結構,在這種情況下,數據庫連接只有在絕對必要時纔會激活 - 這通常會更加高效和易於使用,但實施起來更加困難和耗時。雖然有幾個框架有類可用來幫助生成這樣的系統,但是,例如Zend Framework。
還要記住存儲數據庫連接信息的其他方法 - 使用多個數據庫的某些應用程序可能會將信息存儲在XML文件中,以便在數據庫選擇中提供更大的靈活性。
還有其他的想法,但這些都是我見過的最常用的方法。
- 1. 把接口放在哪裏?
- 2. 哪裏把自定義功能在Joomla
- 3. 在哪裏我把功能setContentView()?
- 4. 去哪裏把humans.txt放在Joomla上
- 5. 我很難搞清楚把主要功能放在哪裏
- 6. 把碎片的功能代碼放在哪裏?
- 7. 把CakePHP項目中的通用功能放在哪裏
- 8. 你把ivysettings.xml放在哪裏?
- 9. 把drawRect放在哪裏?
- 10. 把JavaScript放在哪裏
- 11. 把bootstrapper放在哪裏?
- 12. 把CMakeLists.txt放在哪裏?
- 13. 把Testdata放在哪裏?
- 14. 把cellforrowatindexpath放在哪裏?
- 15. JavaScript:在哪裏放置原型功能
- 16. CakePHP:在哪裏放置這個功能
- 17. Qt:在哪裏放置連接語句?
- 18. 在哪裏把pdf文件放在ti
- 19. 在哪裏把node.js代碼放在cPanel
- 20. 把父div放在整個網頁上
- 21. 在哪裏把phantomjs.exe放在Windows 7上的Tomcat 7上
- 22. 在哪裏把chromedriver.exe釋放Selenium WebDriver C#
- 23. 我該把registerDefaults放在哪裏?
- 24. 把JS文件放在Rails的哪裏?
- 25. 把Firebase.setAndroidContext()函數放在哪裏
- 26. 把自己的類放在哪裏
- 27. 把gradle.properties文件放在哪裏
- 28. 把UITableViewCell邏輯放在哪裏?
- 29. swffit,把代碼放在哪裏?
- 30. Xcode:把輸入文件放在哪裏?
這個問題是主觀的,任何答案都值得一個優點 – 2012-02-06 15:21:39