dos常用指令 解決PHP在DOS指令列下卻無法連結MySQL的技術筆記

WBOY
發布: 2016-07-29 08:44:07
原創
1098 人瀏覽過

正好今天朋友 xjb 也碰到了這個問題,所以寫了這篇筆記,將此問題的描述以及解決記錄下。
問題描述:用web 方式, 可以連結mysql, 但是在命令列下, 卻提示:
  Fatal Error: undefined function mysql_connect()
  環境: Windows 2003, PHP 5. Apache 2.0
  在php.ini 中, 已經將php_mysql.dll 的模組選項給打開了;測試的腳本也很簡單,就一個mysql_conect 函數,內容如下:

複製程式碼

程式碼如下:



php.ini:
extension=php_mysql.dll
測試腳本test.php 內容如下: text.

if ( !mysql_connect(DBHOST, DBUSER,DBPWD) )
{
echo "連線失敗!";
exit;
}
echo "連線成功! t";
?>


用web 方式呼叫http://localhost/test.php, 執行正常, 顯示"連接成功".
  但用dos command 命令行的方式呼叫d:/php/php.exe test.php 卻顯示連線失敗, 錯誤訊息為: Fatal Error: undefined function mysql_connect()
  很顯然, 在dos command 指令列的環境下,mysql 的模組沒有被調用。方法弄盡, 仍無法解決. 百思不得其解. 後來, 用寫了個腳本, 看看php 的配置, 在兩個環境下有什麼不同:
test.php

複製程式碼 程式碼如下:



echo phpinfo();
?>

echo phpinfo();
?>



查看兩個環境下phpinfo() 輸入的php 設定信息,終於發現了問題所在:

Web 方式http://localhost/test.php 方式呼叫時, 其Configuration File (php.ini) Path 顯示為C :WINDOWSphp.ini。

DOS COMMAND 命令列方式 d:/php/php.exe test.php 呼叫時, 其 Configuration File (php.ini) Path 為 d:phpphp.ini。

  而在 c:windows 和 d:php 目錄下, 都存在一個 php.ini 文件,d:php 目錄下的 php.ini 沒有將 extension=php_mysql.dll 模組打開.於是將 d:phpphp.ini 刪除,只保留 c:windowsphp.ini,問題解決.

  總結:在windows 下安裝php 時, 為了避免設定檔混亂,將安裝目錄下的php.ini 複製到windows 目錄下之後,應該將原來安裝目錄下的php.ini 檔案重新命名或刪除,以免造成在不同環境下執行時,查找設定檔不一致的情況發生。問題發生的原因一般都是非常非常簡單,但找出、排除問題的過程,卻是相當的煩人。 以上就介紹了dos常用指令 解決PHP在DOS命令列下卻無法連結MySQL的技術筆記,包括了dos常用指令方面的內容,希望對PHP教學有興趣的朋友有所幫助。
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!